首页 文章 精选 留言 我的

精选列表

搜索[官方],共10020篇文章
优秀的个人博客,低调大师

CentOS6,CentOS7官方镜像安装Oracle11G

安装准备 1.操作系统 CentOS6或CentOS7 2.数据库版本 linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip 3.下载Oracle11G 下载地址:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 4.修改hosts文件 sh 复制代码 # 编辑hosts文件 vi /etc/hosts # 添加 10.0.0.206 work006 注意: 10.0.0.206为该电脑IP可用ip addr查看 work006为主机名 5.安装一些必要的软件 sh 复制代码 yum install wget unzip net-tools -y wget:下载用的 unzip:解压oracle安装文件 net-tools:查看本机网络情况 比如netstat 6.系统必须设置SWAP分区 安装 1.使用oracle提供的环境配置工具 CentOS7: sh 复制代码 wget http://public-yum.oracle.com/public-yum-ol7.repo -O /etc/yum.repos.d/public-yum-ol7.repo && wget http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol7 -O /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle && yum install oracle-rdbms-server-11gR2-preinstall -y CentOS6: sh 复制代码 wget http://public-yum.oracle.com/public-yum-ol6.repo -O /etc/yum.repos.d/public-yum-ol6.repo && wget http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6 -O /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle && yum install oracle-rdbms-server-11gR2-preinstall -y 注意: 这个工具会调整内核参数,建立一些必要的linux用户&组 可能网络不好会安装不成功,多install一下 完成后备份一下这个目录的文件到其他目录(该文件夹是修改系统后日志和原本的内核配置备份) /var/log/oracle-rdbms-server-11gR2-preinstall 查看内核参数 sysctl -f 2.创建一些目录和配置 配置oracle系统配置文件 sh 复制代码 cat >> /etc/oraInst.loc <<EOF inventory_loc=/home/oracle/ora11g/oraInventory inst_group=oinstall EOF 授权 sh 复制代码 chmod 664 /etc/oraInst.loc 创建oracle安装的目录&授权 sh 复制代码 mkdir -p /data0/oracle/app/ && mkdir /data0/oracle/tmp/ && chown -R oracle:oinstall /data0/oracle/app/ && chmod -R 775 /data0/oracle/app/ && chmod a+wr /data0/oracle/tmp/ 3.设置oracle用户密码 sh 复制代码 passwd oracle 注意:oracle用户是安装工具自己创建的 4.切换到oracle用户 新开一个ssh窗口,以oracle用户登录 5.修改环境变量 打开文件 sh 复制代码 vi .bash_profile 在文件末尾添加 sh 复制代码 TMP=/data0/oracle/tmp TMPDIR=/data0/oracle/tmp export TMP TMPDIR ORACLE_BASE=/data0/oracle/app/oracle ORACLE_HOME=/data0/oracle/app/oracle/product/11.2.0/dbhome_1 ORACLE_SID=orcl PATH=$ORACLE_HOME/bin:$PATH export ORACLE_BASE ORACLE_SID ORACLE_HOME PATH 保存 sh 复制代码 :x 刷新配置文件 sh 复制代码 source .bash_profile 6.上传安装文件到/home/oracle目录并解压,然后授予权限 sh 复制代码 cd /home/oracle && unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip && chown -R oracle:oinstall /home/oracle/database 7.配置db_install.rsp 备份到/home/oracle/rsp/ sh 复制代码 cp -r /home/oracle/database/response /home/oracle/rsp 配置安装响应文件db_install.rsp文件,修改为以下内容 sh 复制代码 # 我的/home/oracle/rsp/db_install.rsp oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0 # INSTALL_DB_AND_CONFIG安装并自动配置数据库实例和监听 建议首次安装用这个 # 不然配置另外两个文件,新建实例和监听 oracle.install.option=INSTALL_DB_AND_CONFIG ORACLE_HOSTNAME=localhost UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/home/oracle/ora11g/oraInventory SELECTED_LANGUAGES=zh_CN,en ORACLE_HOME=/data0/oracle/app/oracle/product/11.2.0/dbhome_1 ORACLE_BASE=/data0/oracle/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.isCustomInstall=true oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0 oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=oinstall oracle.install.db.config.starterdb.type=GENERAL_PURPOSE # 这个是服务名 oracle.install.db.config.starterdb.globalDBName=orcl # 实例sid oracle.install.db.config.starterdb.SID=orcl oracle.install.db.config.starterdb.characterSet=AL32UTF8 oracle.install.db.config.starterdb.memoryOption=true # 最小256M oracle.install.db.config.starterdb.memoryLimit=1024 # 是否安装学习的scott和hr(我就知道这两个) oracle.install.db.config.starterdb.installExampleSchemas=true oracle.install.db.config.starterdb.enableSecuritySettings=true # 密码全设置成oracle(安装时会提示,个人学习忽略) oracle.install.db.config.starterdb.password.ALL=OracleSys654321 oracle.install.db.config.starterdb.control=DB_CONTROL oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false oracle.install.db.config.starterdb.automatedBackup.enable=false oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/data0/oracle/app/oracle/oradata # true DECLINE_SECURITY_UPDATES=true 8.安装oracle(安装过程出现警告忽略,不操作即可) sh 复制代码 /home/oracle/database/runInstaller -silent -ignorePrereq -responseFile /home/oracle/rsp/db_install.rsp 安装过程可以另开一个shell查看日志 sh 复制代码 tail -f /home/oracle/ora11g/oraInventory/logs/installActions2020-03-12_08-04-30PM.log installActions2020-03-12_08-04-30PM.log为屏幕上显示的日志文件 日志文件中看到Exit Status is 3即为安装完成 9.切换root用户执行脚本 sh 复制代码 /data0/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh 10.切换oracle用户查看安装情况 sqlplus登录 sh 复制代码 sqlplus / as sysdba 查看状态 sh 复制代码 select status from v$instance; 11.切换root用户重启系统 sh 复制代码 reboot 12.配置防火墙并开放1521端口 CentOS6 打开文件 sh 复制代码 vi /etc/sysconfig/iptables 在( -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT ) 下添加 sh 复制代码 -A INPUT -m state --state NEW -m tcp -p tcp --dport 1521-j ACCEPT 保存并退出 sh 复制代码 :x 重启防火墙 sh 复制代码 service iptables restart CentOS7 sh 复制代码 firewall-cmd --add-port=1521/tcp --permanent && firewall-cmd --add-port=1521/tcp 13.修改监听文件 切换目录 sh 复制代码 cd /data0/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin 修改listener.ora和tnsnames.ora这两个文件把主机名换成本机IP即可 14.启动数据库 启动监听 sh 复制代码 lsnrctl start sqlplus登录 sh 复制代码 sqlplus / as sysdba 启动 sh 复制代码 startup 15.修改oracle服务启动配置 sh 复制代码 vi /etc/oratab 将 sh 复制代码 orcl:/data0/oracle/app/oracle/product/11.2.0/dbhome_1:N 改 sh 复制代码 orcl:/data0/oracle/app/oracle/product/11.2.0/dbhome_1:Y 16.外网连接数据库并测试 用户名:sys 密码:oracle 服务名:orcl 角色:SYSDBA 17.常用命令 sh 复制代码 # oracle用户下启动|关闭数据库 # 启动 dbstart $ORACLE_HOME # 关闭 dbshut $ORACLE_HOME # oracle用户下启动|关闭数据库监听 # 启动 lsnrctl start # 关闭 lsnrctl stop # sqlplus下启动|关闭数据库 # sqlplus登录 sqlplus / as sysdba # 启动 startup # 关闭 shutdown 18.切换root配置oracle服务为开机自启 编辑文件 sh 复制代码 vi /etc/rc.local 添加命令 sh 复制代码 su - oracle -c 'dbstart $ORACLE_HOME' 修改权限 sh 复制代码 chmod a+x /etc/rc.local 19.清除安装文件 /home/oracle目录下的安装oracle的文件均可清除(慎用下面那个命令) sh 复制代码 rm -rf /home/oracle/* 20.修改oracle端口(11015) 停止监听 sh 复制代码 lsnrctl stop 修改端口 sh 复制代码 cd /data0/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin 修改listener.ora和tnsnames.ora这两个文件把端口1521修改成11015即可 查看参数 sqlplus登录 sh 复制代码 sqlplus / as sysdba 查看 sh 复制代码 show parameter local_listener 若为第一次修改VALUE为空 sh 复制代码 alter system set local_listener="(address = (protocol = tcp)(host = izuf68yfs65r3cmglfxf2pz)(port = 11015))"; 注意: izuf68yfs65r3cmglfxf2pz为主机名 11015为端口 启动监听 sh 复制代码 lsnrctl start 查看监听 sh 复制代码 netstat -an|grep 11015

优秀的个人博客,低调大师

Docker了解(官方解读)

一、Docker了解一下 最近工作中,说让实习生们了解下Docker,就有实习生去买了本Docker的书看。 首先不说这本书怎么样或者实效性上的影响,还有编书人的水平怎么样! 就说学习一门新技术,最好的方式,肯定是从官网入手,连官网都没有访问过的,买本书看有何意义? 二、什么是Docker? 首先上Docker的:官网 Docker是全球领先的软件容器平台。 三、概观 Docker是推动集装箱运动的公司,也是推动整个混合云中每个应用程序的唯一容器平台提供商。当今的企业面临着数字化转型的压力,但受到现有应用程序和基础架构的制约,同时合理化日益多样化的云,数据中心和应用程序架构产品组合。Docker实现了应用程序和基础架构与开发人员和IT操作员之间的真正独立性,以释放他们的潜力并创建更好的协作和创新模式。 四、Docker的三个优点 1.自由选择 以适合您的组织的方式灵活地发展您的应用程序组合。从头开始或从小做起 - Docker通过一个也适用于新开发的平台来延长遗留应用程序的生命周期。 2.敏捷操作 标准化和自动化您在各部门之间构建,管理和保护应用程序的方式。由于Docker将开发人员和IT运营部署在同一个平台上,因此他们可以一起更智能,更快速地工作。 3.综合安全 获取用于交付更安全应用程序的集成安全框架,并改进策略自动化,以保持性能并且不会妨碍您的发展。 五、什么是容器平台 一个容器平台是一个完整的解决方案,它允许组织根据不同的需求解决多个问题。它不仅仅是一项技术和协调 - 它通过提供企业运营所需的所有部分,包括整个应用生命周期中的安全,治理,自动化,支持和认证,为整个组织提供可持续的利益。Docker企业版(EE)是一个企业级容器平台,可让IT领导者选择如何以自己的节奏有效构建和管理整个应用程序组合,而无需担心体系结构和基础架构的锁定。

优秀的个人博客,低调大师

官方文档 Upgrading Elasticsearch

Upgrading Elasticsearch Before upgrading Elasticsearch: Consult thebreaking changesdocs. Use theElasticsearch Migration Pluginto detect potential issues before upgrading. Test upgrades in a dev environment before upgrading your production cluster. Alwaysback up your databefore upgrading. Youcannot roll backto an earlier version unless you have a backup of your data. If you are using custom plugins, check that a compatible version is available. Elasticsearch can usually be upgraded using a rolling upgrade process, resulting in no interruption of service. This section details how to perform both rolling upgrades and upgrades with full cluster restarts. To determine whether a rolling upgrade is supported for your release, please consult this table: Upgrade From Upgrade To Supported Upgrade Type 1.x 5.x Reindex to upgrade 2.x 2.y Rolling upgrade(wherey > x) 2.x 5.x Full cluster restart 5.0.0 pre GA 5.x Full cluster restart 5.x 5.y Rolling upgrade(wherey > x) Indices created in Elasticsearch 1.x or before Elasticsearch is able to read indices created in theprevious major version only. For instance, Elasticsearch 5.x can use indices created in Elasticsearch 2.x, but not those created in Elasticsearch 1.x or before. This condition also applies to indices backed up withsnapshot and restore. If an index was originally created in 1.x, it cannot be restored into a 5.x cluster even if the snapshot was made by a 2.x cluster. Elasticsearch 5.x nodes will fail to start in the presence of too old indices. SeeReindex to upgradefor more information about how to upgrade old indices. !!!回滚升级就是一次升级一个节点!!!! A rolling upgrade allows the Elasticsearch cluster to be upgraded one node at a time, with no downtime for end users. Running multiple versions of Elasticsearch in the same cluster for any length of time beyond that required for an upgrade is not supported, as shards will not be replicated from the more recent version to the older version. Reindex to upgrade Elasticsearch is able to use indices created in the previous major version only. For instance, Elasticsearch 5.x can use indices created in Elasticsearch 2.x, but not those created in Elasticsearch 1.x or before. Elasticsearch 5.x nodes will fail to start in the presence of too old indices. If you are running an Elasticsearch 2.x cluster which contains indices that were created before 2.x, you will either need to delete those old indices or to reindex them before upgrading to 5.x. SeeReindex in place. If you are running an Elasticsearch 1.x cluster, you have two options: First upgrade to Elasticsearch 2.4.x, reindex the old indices, then upgrade to 5.x. SeeReindex in place. Create a new 5.x cluster and use reindex-from-remote to import indices directly from the 1.x cluster. SeeUpgrading with reindex-from-remote. Reindex in place The easiest way to reindex old (1.x) indices in place is to use theElasticsearch Migration Plugin. You will need to upgrade to Elasticsearch 2.3.x or 2.4.x first. Upgrading with reindex-from-remote If you are running a 1.x cluster and would like to migrate directly to 5.x without first migrating to 2.x, you can do so usingreindex-from-remote. 转自:https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-upgrade.html#setup-upgrade 本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7443844.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

《OSGI官方指南》首页

开发者 开始使用OSGI。通过重用组件的方式来构建和管理你的高度复杂的系统;OSGI使我们的代码更加容易编写、测试和重用,使管理动态部署和检测错误更容易;远程部署;检测和解决你可能不能立马察觉到的问题; 如果你正在使用Java开发软件,那么OSGI应该在你的工具箱里面; 为什么使用OSGI? OSGI为如今在不同规模分布式系统、嵌入式应用程序和设备网络种提供了体系化和模块化的架构。从内部和现有的模块构建系统,显著的提高了软件产品和解决方案的重用,并扩展他们的生命周期,同时减少了开发和维护的费用。OSGi编程模型实现基于组件的系统的原则。 OSGI技术成功的原因在于它提供了一个非常成熟且运行在大量环境中的组件系统。OSGi组件系统被用于构建像IDE、应用服务器、应用程序框架、通信服务框架、工业自动化、家用网关设备、机载远程信息处理系统等更多高度复杂的应用程序。 使OSGi为你工作 垂直和跨行业需要通过在“专家组”的前提下,定制平台OSGi服务平台体系结构的完整性。目前的专家小组包括企业专家组,住宅专家小组和专家组核心平台。成员提出和为新的专家小组建立规章并由OSGi董事会批准。 你想将OSGI作为你的首选协议吗?OSGi成员创建新的协议规范作为会员的获益。专家小组正与其他行业协会合作,致力于通过一个OSGi设备抽象层去扩展OSGi未能触及的领域。成员通过物联网和云协作。你们对于OSGI的议程是什么? 起步 组织提供了许多资源用于探索OSGi和开始使用OSGi来开发项目。OSGi导航是一个构建和实现模块化的实用和有效的资源应用程序。 获得认证 证明你的OSGi技术。得到认证。OSGi联盟成员提供培训课程和提供OSGi认证测试。 转载自并发编程网 - ifeve.com

优秀的个人博客,低调大师

WiseCloud成为全球首批Kubernetes官方认证平台产品-CNCF官方发布

【新闻快讯】11月13日美国时间,CNCF在旧金山正式对外发布Kubernetes软件一致性项目,并对外公布了包括睿云智合WiseCloud在内的全球32家率先通过认证测试的平台产品及Kubernetest分发版。这意味着,睿云智合的容器云平台产品在云原生领域受到国际权威机构认可。 CNCF和KubernetesConformanceProgram CNCF基金会由谷歌联合其他20家公司在2015年成立,现在是隶属于Linux基金会的非营利性组织。CNCF致力于开源云原生云项目的管理,旨在发展合作伙伴和开源社区,共同推动Kubernetes以及容器计算的发展,其成员包括Docker、Google、Intel、RedHat、IBM等国际知名科技公司。 KubernetesConformanceProgram是CNCF刚刚推出的Kubernetes分发版或云平台的一致性测试项目。通过测试的Kubernetes的认证平台产品可以为企业组织带来信心。意味着他们所使用的平台产品紧跟Kubernetes快速发展的步伐,同时也表明他们可以使用原生Kubernetes最新的通用功能。该计划还包括提供强有力的保证,保证通过Kubernetes认证商业供应商将继续发布新版本,以确保客户能够享受快速发展的Kubernetes功能。 睿云智合:技术雄厚彰显云计算创新领导力 睿云智合作为中国容器云服务专业提供商,目前已申请加入到CNCF和Linux基金会。自2015年成立至今,睿云智合一直致力于容器领域的核心研发,将公司基于容器的云计算技术服务、及PaaS平台产品(WiseCloud)推向更多的企业客户,帮助他们及早打造支撑未来科技发展战略的云计算基础平台,并一直致力于为开源发展做出贡献。 在产品方面,睿云智合旗下的企业级容器云平台Wisecloud已于2016年正式上线。 WiseCloud支持Docker、Kubernetes等主流容器引擎以及编排调度框架,可以为企业级用户提供开发、测试、发布、持续运营等容器化应用的全生命周期管理。 面对多容器集群管理平台,WiseCloud能提供完善的容器管理平台基础性服务,包括容器网络,存储服务等,对各种容器集群平台的资源进行统一抽象。 此外,WiseCloud未来将逐步支持行业应用架构和接口标准/规范,比如常用行业应用中间件、基于微服务的行业应用商店、已开发好的行业应用SaaS服务等。

优秀的个人博客,低调大师

CNCF官方发布:WiseCloud成为全球首批Kubernetes官方认证平台产品

【新闻快讯】11月13日美国时间,CNCF在旧金山正式对外发布Kubernetes软件一致性项目,并对外公布了包括睿云智合WiseCloud在内的全球32家率先通过认证测试的平台产品及Kubernetest分发版。这意味着,睿云智合的容器云平台产品在云原生领域受到国际权威机构认可。 CNCF和KubernetesConformanceProgram CNCF基金会由谷歌联合其他20家公司在2015年成立,现在是隶属于Linux基金会的非营利性组织。CNCF致力于开源云原生云项目的管理,旨在发展合作伙伴和开源社区,共同推动Kubernetes以及容器计算的发展,其成员包括Docker、Google、Intel、RedHat、IBM等国际知名科技公司。 KubernetesConformanceProgram是CNCF刚刚推出的Kubernetes分发版或云平台的一致性测试项目。通过测试的Kubernetes的认证平台产品可以为企业组织带来信心。意味着他们所使用的平台产品紧跟Kubernetes快速发展的步伐,同时也表明他们可以使用原生Kubernetes最新的通用功能。该计划还包括提供强有力的保证,保证通过Kubernetes认证商业供应商将继续发布新版本,以确保客户能够享受快速发展的Kubernetes功能。 睿云智合:技术雄厚彰显云计算创新领导力 睿云智合作为中国容器云服务专业提供商,目前已申请加入到CNCF和Linux基金会。自2015年成立至今,睿云智合一直致力于容器领域的核心研发,将公司基于容器的云计算技术服务、及PaaS平台产品(WiseCloud)推向更多的企业客户,帮助他们及早打造支撑未来科技发展战略的云计算基础平台,并一直致力于为开源发展做出贡献。 在产品方面,睿云智合旗下的企业级容器云平台Wisecloud已于2016年正式上线。 WiseCloud支持Docker、Kubernetes等主流容器引擎以及编排调度框架,可以为企业级用户提供开发、测试、发布、持续运营等容器化应用的全生命周期管理。 面对多容器集群管理平台,WiseCloud能提供完善的容器管理平台基础性服务,包括容器网络,存储服务等,对各种容器集群平台的资源进行统一抽象。 此外,WiseCloud未来将逐步支持行业应用架构和接口标准/规范,比如常用行业应用中间件、基于微服务的行业应用商店、已开发好的行业应用SaaS服务等。

优秀的个人博客,低调大师

Android -- 官方下拉刷新SwipeRefreshLayout

V4的兼容包 API 大概就这4个常用的方法。 code 布局 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipe" android:layout_width="match_parent" android:layout_height="match_parent" > <ListView android:id="@+id/listview" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </android.support.v4.widget.SwipeRefreshLayout> </RelativeLayout> MainActivty @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listView = (ListView) findViewById(R.id.listview); mSwipeLayout = (SwipeRefreshLayout) findViewById(R.id.swipe); list = new ArrayList<MyTextClass>(); Map<String, String> maps = new HashMap<String, String>(); maps.put("1", "2"); myHandler = new MyHandler(); client = new MyHttpClient(myHandler); myThread = new MyThread(client,"http://192.168.1.4/json/index.php",maps,GETJSON); myHandler.setThread(myThread); myHandler.setHandlerExtraHandleMessage(new MyHandler.HandlerExtraHandleMessage() { @Override public void handleMessage(Message msg) { switch (msg.what) { case GETJSON: String strJson1 = (String) msg.obj; Json json1 = new Json(strJson1); try { list = json1.getMyTextClass(); } catch (JSONException e) { e.printStackTrace(); } myBaseAdapter = new MyBaseAdapter(MainActivity.this, list); listView.setAdapter(myBaseAdapter); break; case REFRESH: String strJson2 = (String) msg.obj; Json json2 = new Json(strJson2); //list.clear(); try { list = json2.getMyTextClass(); } catch (JSONException e) { e.printStackTrace(); } if(myBaseAdapter != null) { myBaseAdapter.setList(list); myBaseAdapter.notifyDataSetChanged(); } else { MyBaseAdapter myBaseAdapter2 = new MyBaseAdapter(MainActivity.this, list); listView.setAdapter(myBaseAdapter2); } mSwipeLayout.setRefreshing(false); break; default: System.out.println("Other Message"); break; } super.handleMessage(msg); } }); Map<String, String> maps2 = new HashMap<String, String>(); maps.put("1", "2"); MyRefreshListener myRefreshListener = new MyRefreshListener(myHandler, maps2, REFRESH); mSwipeLayout.setOnRefreshListener(myRefreshListener); mSwipeLayout.setColorScheme(android.R.color.holo_green_dark, android.R.color.holo_green_light, android.R.color.holo_orange_light, android.R.color.holo_red_light); } 我是天王盖地虎的分割线 本文转自我爱物联网博客园博客,原文链接:http://www.cnblogs.com/yydcdut/p/3922845.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

Apache Storm 官方文档 —— Metrics

Storm 提供了一个可以获取整个拓扑中所有的统计信息的度量接口。Storm 内部通过该接口可以跟踪各类统计数字:executor 和 acker 的数量、每个 bolt 的平均处理时延、worker 使用的最大堆容量等等,这些信息都可以在 Nimbus 的 UI 界面中看到。 Metric 类型 使用 Metrics 只需要实现一个接口方法:getValueAndReset,在方法中可以查找汇总值、并将该值复位为初始值。例如,在 MeanReducer 中就实现了通过运行总数除以对应的运行计数的方式来求取均值,然后将两个值都重新设置为 0。 Storm 提供了以下几种 metric 类型: AssignableMetric— 将 metric 设置为指定值。此类型在两种情况下有用:1. metric 本身为外部设置的值;2. 你已经另外计算出了汇总的统计值。 CombinedMetric— 可以对 metric 进行关联更新的通用接口。 CountMetric— 返回 metric 的汇总结果。可以调用incr()方法来将结果加一;调用incrBy(n)方法来将结果加上给定值。 MultiCountMetric— 返回包含一组 CountMetric 的 HashMap ReducedMetric MeanReducer— 跟踪由它的reduce()方法提供的运行状态均值结果(可以接受Double、Integer、Long等类型,内置的均值结果是Double类型)。MeanReducer 确实是一个相当棒的家伙。 MultiReducedMetric— 返回包含一组 ReducedMetric 的 HashMap Metric Consumer 构建自定义 metric 内建的 Metric builtin_metrics.clj为内建的 metrics 设置了数据结构,以及其他框架组件可以用于更新的虚拟方法。metrics 本身是在回调代码中实现计算的 — 请参考executor.clj中的ack-spout-msg的例子。 转载自并发编程网 - ifeve.com

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册