监听器

监听器

假装没事ソ 提交于 2019-12-05 21:55:20
可以设置观察的操作:exists,getChildren,getData 可以触发观察的操作:create,delete,setData zookeeper观察机制; 服务端只存储事件的信息,客户端存储事件的信息和Watcher的执行逻辑.ZooKeeper客户端是线程安全的每一个应用只需要实例化一个ZooKeeper客户端即可,同一个ZooKeeper客户端实例可以在不同的线程中使用。ZooKeeper客户端会将这个Watcher对应Path路径存储在ZKWatchManager中,同时通知ZooKeeper服务器记录该Client对应的Session中的Path下注册的事件类型。当ZooKeeper服务器发生了指定的事件后,ZooKeeper服务器将通知ZooKeeper客户端哪个节点下发生事件类型,ZooKeeper客户端再从ZKWatchManager中找到相应Path,取出相应watcher引用执行其回调函数process。 ZooKeeper Watcher 机制 为了确保集群能够正常运行,ZooKeeper 可以被用来监视集群状态,这样就可以提供集群高可用性。使用 ZooKeeper 的瞬时(ephemeral)节点概念可以设计一个集群机器状态检测机制: 1. 每一个运行了 ZooKeeper 客户端的生产环境机器都是一个终端进程,我们可以在它们连接到

linux重启oracle 各种方法

风流意气都作罢 提交于 2019-12-05 20:36:37
在linux下重启oracle数据库及监听器: 方法1: 用root以ssh登录到linux,打开终端输入以下命令: cd $ORACLE_HOME #进入到oracle的安装目录 dbstart #重启服务器 lsnrctl start #重启监听器 cd $ORACLE_HOME #进入到oracle的安装目录 dbstart #重启服务器 lsnrctl start #重启监听器 ----------------------------------- 方法2: Sql代码 cd $ORACLE_HOME/bin #进入到oracle的安装目录 ./dbstart #重启服务器 ./lsnrctl start #重启监听器 ----------------------------------- 方法3: (1) 以oracle身份登录数据库,命令:su – oracle (2) 进入Sqlplus控制台,命令:sqlplus /nolog (3) 以系统管理员登录,命令:connect / as sysdba (4) 启动数据库,命令:startup (5) 如果是关闭数据库,命令:shutdown immediate (6) 退出sqlplus控制台,命令:exit (7) 进入监听器控制台,命令:lsnrctl (8) 启动监听器,命令:start (9) 退出监听器控制台

(四)Java秒杀项目之JMeter压测

余生颓废 提交于 2019-12-05 19:46:58
一、JMeter入门压测 1、打开JMeter工具,选中测试计划->右键添加->线程(用户)->线程组,页面中的线程数就是并发数,页面中的Ramp-Up时间(秒)表示通过多长时间启动起来这些线程,如果值为0,表示这些线程一起启动起来。 2、选中线程组->右键添加->配置元件->HTTP请求默认值,来配置一个默认请求。页面中的协议填http,服务器名称或IP填localhost,端口号填8080。 3、选中线程组->右键添加->Sampler(取样器)->HTTP请求,页面中的名称填商品列表,协议、服务器名称或IP、端口号就不需要填了,因为上一步中添加了默认的。路径填/goods/to_list,这是我们之前的商品列表代码的接口。 4、选中线程组->右键添加->监听器->聚合报告,显示压测的总结结果。选中线程组->右键添加->监听器->图形结果,显示压测的图形结果。选中线程组->右键添加->监听器->用表格查看结果,显示压测的表格形式结果。点击绿色三角启动按钮开始压测。可以选择保存,后缀默认为.jmx,也可不保存。 5、聚合报告也页面中的Throughput表示吞吐量,可以简单的理解为QPS。 6、终端使用top命令监控cup,Load Avg表示负载。增大线程数再运行可以看到负载增大。 来源: https://www.cnblogs.com/yanguobin/p/11942534

Linux下Oracle11g 自动随系统启动

。_饼干妹妹 提交于 2019-12-05 19:12:20
安装完毕 Oracle 11g 每次都得手动启动 | 停止数据库(dbstart | dbshut)、监听器(lsnrctl)、控制台(emtcl)。 设置一下,若手动启动数据库的同时监听器没有启动(即启动数据库时自动启动监听器,停止数据库时停止监听器),则需要修改 dbstart 脚本文件 [root @oracle bin]# vi dbstart 找到此段话,在最前端 # First argument is used to bring up Oracle Net Listener ORACLE_HOME_LISTNER=$1 //需要将此处的 ORACLE_HOME_LISTNER=$1 修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME if [ ! $ORACLE_HOME_LISTNER ] ; then echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener" echo "Usage: $0 ORACLE_HOME" else LOG=$ORACLE_HOME_LISTNER/listener.log 同样,也需要修改 dbshut [root @oracle bin]# vi dbshut # The this to bring down

nodejs 异步和回调函数/事件

烈酒焚心 提交于 2019-12-05 15:38:54
nodejs nodejs是单线程单进程应用程序,但是V8引擎提供的异步执行回调接口可以处理大量的并发,nodejs性能非常高。nodejs积分每一个api都支持回调函数。 回调函数 要点:异步函数将回调函数作为最后一个参数,回调函数接受错误对象为第一个参数。异步编程依托回调来实现,nodejs异步编程直接体现酒是回调。 阻塞代码实列 添加一个app.js data.txt var fs = require('fs'); var data = fs.readFileSync('data.txt'); console.log(data.toString()); console.log('程序执行完成'); 执行 非阻塞代码 /** * * 回调作为异步最后一个 * 错误对象作为回调第一个参数 * * */ fs.readFile('data.txt', function (err, data) { if (err) return console.error(err); console.log(data.toString()); }) console.log('程序执行完成'); 运行: 事件 驱动原理:nodejs使用事件驱动模型,当webservice接收到请求,就关闭它然后惊喜处理,然后去服务下一个web请求,当这个请求完成,它被放回处理列队,当列队达到列开头,这个结果被返给用户

201871010136—赵艳强《面向对象程序设计(java)》第十三周学习总结

可紊 提交于 2019-12-05 15:25:44
201871010136—赵艳强《面向对象程序设计(java)》第十三周学习总结 博文正文开头格式:(2分) 项目 内容 《面向对象程序设计(java)》 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p/11888568.html 作业学习目标 (1) 掌握事件处理的基本原理,理解其用途; (2) 掌握AWT事件模型的工作机制; (3) 掌握事件处理的基本编程模型; (4) 了解GUI界面组件观感设置方法; (5) 掌握WindowAdapter类、AbstractAction类的用法; (6) 掌握GUI程序中鼠标事件处理技术。 随笔博文正文内容包括: 第一部分:总结第十一章理论知识(35分) 第11章 事件处理 一、 事件处理基础 (a)事件源(event source):能够产生事件的对象都可 以成为事件源,如文本框、按钮等。一个事件源是一个 能够注册监听器并向监听器发送事件对象的对象。 (b) 事件监听器(event listener):事件监听器对象接 收事件源发送的通告(事件对象),并对发生的事件作 出响应。一个监听器对象就是一个实现了专门监听器接 口的类实例,该类必须实现接口中的方法,这些方法当 事件发生时,被自动执行。 (c) 事件对象(event

20187101021-王方《面面相对象程序设计java》第十三周实验总结

ε祈祈猫儿з 提交于 2019-12-05 15:25:01
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p/11435127.html 作业学习目标是什么 (1) 掌握事件处理的基本原理,理解其用途; (2) 掌握 AWT 事件模型的工作机制; (3) 掌握事件处理的基本编程模型; (4) 了解 GUI 界面组件观感设置方法; (5) 掌握 WindowAdapter 类、 AbstractAction 类的用法; (6) 掌握 GUI 程序中鼠标事件处理技术。 第一部分 基础知识 (一)事件处理基础 1.实例:处理按钮点击事件 在java中,都将事件的相关信息封装在一个事件对象中,所有的事件对象都最终派生于java.util.EventObje类。当然,每个事件类型还有子类,例如ActionEvent和WindowEvent。不同的事件源可以产生不同类别的事件。例如,按钮可以发送一个ActionEvent对象,而窗口可以发送WindowEvent对象 在这个示例中,想要在一个面板中放置三个按钮,添加三个监听器对象用来作为按钮的动作监听器。只要用户点击面板上的任何一个按钮, 相关的监听器对象就会接收到一个Action Event对象,他表示有个按钮被点击了。在示例程序中

nodejs学习笔记》入门级教程

*爱你&永不变心* 提交于 2019-12-05 15:15:10
简单的说 Node.js 就是运行在服务端的 JavaScript。它的优势是基于Google的V8引擎(执行速度非常快、性能非常好、社区活跃),更具诱惑力的是采用node+mongodb开发中小型网站速度更快(据说成本更低)。 目录 1.1. Node简介 1.2. 下载安装 1.3. 模块机制 1.4. 异步I/O 1.5. 异步编程 1.6. 核心API 1.6.1. Event 1.6.2. HTTP 1.6.3. I/O 1.7. 全局对象&全局变量 1.8. util模块 1.9. assert断言 1.10. npm 1.10.1. package.json 1.10.2. 命令 1.10.3. 远程镜像 1.11. Cluster模块 1.12. PM2模块 1.1. Node简介 1.2. 下载安装 https://nodejs.org/zh-cn/download/releases/ 1.3. 模块机制 1.4. 异步I/O 1.5. 异步编程 1.6. 核心API 1.6.1. Event events是Node.js最重要的模版,原因是Node.js本身架构就是事件式的,而它提供了唯一的接口。所以开成Node.js事件编程的基石。events模块不仅用于用户代码与Node.js下层事件循环的交互。还几乎被所有的模块依赖。 events模块只提供了一个对象

Oracle配置监听(listener.ora配置)

浪尽此生 提交于 2019-12-05 14:40:20
1.listener.ora文件 1 #这是一个名为 LISTENER的监听器 2 #监听的协议是TCP协议 3 #监听的主机IP是127.0.0.1 4 #监听的端口是1521端口 5 LISTENER = 6 (DESCRIPTION = 7 (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) 8 ) 9 10 #记录了监听器LISTENER服务的全局数据库名、数据库路径和数据库实例名 11 SID_LIST_LISTENER= 12 (SID_LIST = 13 (SID_DESC = 14 (GLOBAL_DBNAME = ORCL) 15 (ORACLE_HOME = C:\Oracle11g\product\11.2.0\dbhome_1) 16 (SID_NAME = ORCL) 17 ) 18 ) View Code 2.tnsnames.ora文件 1 #ORCL是个别名 2 #这条信息记录了我们使用TCP协议,去连接IP地址为127.0.0.1,端口号为1521的数据库主机上服务名为orcl的数据库 3 ORCL = 4 (DESCRIPTION = 5 (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) 6 (CONNECT

第十三周课程总结

匆匆过客 提交于 2019-12-05 09:56:47
事件处理 事件和监听器 在Swing编程中,所有的事件类都是EventObject类的子类 Java事件处理流程 事件源:发生此事件的源对象。 事件监听器:事件的接收对象。 窗体事件WindowListener 动作事件及监听处理 在事件处理中提供了适配器类(Adapter),方便用户进行事件处理的实现。 键盘事件及监听处理KeyListener keyEvent 鼠标事件及其监听MouseListener MouseEvent 鼠标拖拽事件及监听处理MouseMotionListener 单选钮: JRadioButton JRadioButton事件处理 ItemEvent事件 复选框: JCheckBox {{uploading-image-660430.png(uploading...)}} 菜单组件 JMenuBar的常用方法 JMenu的常用方法 JMenultem 文件选择框JFileChooser 文件选择框的三种返回状态 来源: https://www.cnblogs.com/LILI6/p/11920576.html