zookeeper集群搭建设置

搭建Zookeeper集群:三台服务器,一场分布式之舞 在分布式系统的舞台上,Zookeeper是一位不可或缺的重要角色。如何搭建一个稳定、高性能的Zookeeper集群,成为每位系统管理员和开发者的必修课。让我们一同踏上这场集群之旅,揭秘三台服务器背后的Zookeeper配置细节,打造一个分布式一致性的乐园。 阅读详情

 zookeeper 官网:http://zookeeper.apache.org/ 现在最新版本是 3.4.6 ,但是这个版本我没有运行起来,可能是那配置出现问题了,现在我用的是3.4.5 http://apache.fayea.com/apache-mirror/zookeeper/zookeeper-3.4.5/

环境:windows 8.1 、zookeeper3.4.5

现在要做的是 单机伪集群(木有办法 没有那么多机器啊)

  1. 修改配置文件,在conf中

    将zoo_sample.cfg文件复制一个重命名为zoo.cfg 

  2. 修改zoo.cfg 内容

        打开zoo.cfg:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<code class= "hljs vala" style= "padding:0.5em; margin:0px; display:block; color:rgb(101,123,131); overflow-x:auto; background:rgb(253,246,227)" ><span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of milliseconds of each tick</span>
tickTime=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >2000< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of ticks that the initial </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # synchronization phase can take</span>
initLimit=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >10< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of ticks that can pass between </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # sending a request and getting an acknowledgement</span>
syncLimit=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >5< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # the directory where the snapshot is stored.</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # do not use /tmp for storage, /tmp here is just </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # example sakes.</span>
dataDir= /tmp/zookeeper
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # the port at which the clients will connect</span>
clientPort=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >2181< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # Be sure to read the maintenance section of the </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # administrator guide before turning on autopurge.</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of snapshots to retain in dataDir</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #autopurge.snapRetainCount=3</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # Purge task interval in hours</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # Set to "0" to disable auto purge feature</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #autopurge.purgeInterval=1</span></code>

      修改后:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<code class= "hljs vala" style= "padding:0.5em; margin:0px; display:block; color:rgb(101,123,131); overflow-x:auto; background:rgb(253,246,227)" ><span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of milliseconds of each tick</span>
tickTime=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >2000< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of ticks that the initial </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # synchronization phase can take</span>
initLimit=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >10< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of ticks that can pass between </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # sending a request and getting an acknowledgement</span>
syncLimit=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >5< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # the directory where the snapshot is stored.</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # do not use /tmp for storage, /tmp here is just </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # example sakes.</span>
dataDir=E: /zookeepercluster/servcer001/data
dataLogDir=E: /zookeepercluster/servcer001/logs
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # the port at which the clients will connect</span>
clientPort=<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >2181< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # Be sure to read the maintenance section of the </span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # administrator guide before turning on autopurge.</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # The number of snapshots to retain in dataDir</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #autopurge.snapRetainCount=3</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # Purge task interval in hours</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > # Set to "0" to disable auto purge feature</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #autopurge.purgeInterval=1</span>
server.1=localhost:<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >8881< /span >:<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >7771< /span >
server.2=localhost:<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >8882< /span >:<span class= "hljs-number" style= "padding:0px; margin:0px; color:rgb(42,161,152)" >7772< /span >
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #server.3=192.168.192.7:8883:7773</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #server.4=192.168.192.7:8884:7774</span>
<span class= "hljs-preprocessor" style= "padding:0px; margin:0px; color:rgb(203,75,22)" > #server.5=192.168.192.7:8885:7775</span></code>

  主要是在下边添加几个服务器的ip地址,因为我的都是本机,所以我这都是一样的地址。

  参数解释:

  • tickTime:发送心跳的间隔时间,单位:毫秒

  • dataDir:zookeeper保存数据的目录。

  • clientPort:客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。

  • initLimit:这个配置项是用来配置 Zookeeper 接受客户端(这里所说的客户端不是用户连接 Zookeeper 服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过 5个心跳的时间(也就是 tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 5*2000=10 秒

  • syncLimit:这个配置项标识 Leader 与 Follower 之间发送消息,请求和应答时间长度,最长不能超过多少个 tickTime 的时间长度,总的时间长度就是 2*2000=4 秒

  • server.A=B:C:D:其中 A 是一个数字,表示这个是第几号服务器;B 是这个服务器的 ip 地址;C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。

  3. 在data下面创建一个myid文件,内容为1

      这个内容对应的是这个zookeeper的顺序,第一个zookeeper就是1,第二个zookeeper就是2,没有先后顺序,只是不能重复。

     这个最好是和 server.x 中的x对应

依次修改配置文件 简历server02,server03,server04节点 目录结构如下:

├── server001

│   ├── data

│   ├── logs

│   └── zookeeper-3.4.5

├── server002

│   ├── data

│   ├── logs

│   └── zookeeper-3.4.5

├── server003

│   ├── data

│   ├── logs

│   └── zookeeper-3.4.5

├── server004

│   ├── data

│   ├── logs

│   └── zookeeper-3.4.5

└── server005

    ├── data

    ├── logs

    └── zookeeper-3.4.5

这样就配置好了,windows下的单机伪集群。

下面就是启动了:

进入bin下双击 :zkServer.cmd

报这个错误是因为还有节点没有启动起来,都启动了就会不报错了

运行 zkServer.cmd status 可以查看节点的角色  是leader 还是follower



这样一个伪集群就成功了,如果有不对的地方希望大家批评指正,ORZ。

参考文章:

http://www.cnblogs.com/haippy/archive/2012/07/19/2599989.html

http://zookeeper.apache.org/

http://zookeeper.apache.org/doc/current/zookeeperStarted.html

http://zookeeper.apache.org/doc/current/index.html

http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/

Cadence创建异形焊盘教程(详细操作) 背景:一些常见的矩形/圆形焊盘,设置参数就可。碰到非规则的一些焊盘,那只能用Cadence Allegro PCB来画咯。 一、新建图形 【File】——>【New…】 弹出如下窗口,选择绘制的类型Shape symbol、路径,输入名字 二、设置参数 【Setup】——>【Design Parameters…】 Enhanced display modes:增强型显示模型。全部勾选上。 在【Design】设置单位为mm 设置偏移量(-50,-50) 三、绘制图形 1、找到原点,即参考 阅读详情

相关推荐

ComfyUI新手必看:JoyCaption 2插件安装全流程(附百度网盘资源)

本文为ComfyUI新手提供了JoyCaption 2插件的完整安装与部署指南。详细介绍了从环境准备、插件获取、模型文件配置到核心节点使用的全流程,并重点解析了其集成的LLM反推模式,帮助用户高效实现从图片到精准提示词的转换。

mango的博客 303

博客迁移到Oschina 新地址http://my.oschina.net/6161/blog

博客迁移到Oschina 新地址 http://my.oschina.net/6161/blog

成长源于沉淀 464

【ros2】ros2_control 全面解析与实战指南

ros2_control 是 ROS2 生态中用于机器人实时控制的核心框架,旨在统一硬件接入接口、复用控制算法,避免重复开发,实现仿真与实机硬件的无缝迁移。其核心目标是简化不同硬件(传感器、执行器、完整系统)的集成流程,让开发者专注于控制逻辑而非硬件适配。创建类型功能包,依赖rclcpp。实现on_initupdate在中声明控制器插件,编译生成动态库。在 YAML 配置文件中指定自定义控制器类型,加载测试。

EnHengNa的博客 1486

控制系统稳定性分析:从BIBO稳定到李雅普诺夫理论

稳定性是控制理论的核心概念,它描述了动态系统在扰动下能否保持或回归期望状态的基本特性。其原理在于分析系统微分方程的解是否收敛,这直接决定了控制回路能否安全可靠地工作。在工程实践中,稳定性分析是确保无人机、机器人、工业过程等系统实现预期功能的技术基石。通过传递函数极点分析、状态空间方法以及李雅普诺夫直接法等工具,工程师可以量化系统的稳定程度与收敛速度。本文聚焦于BIBO稳定与李雅普诺夫稳定性理论,深入剖析其定义、判据及在解决系统振荡与发散等实际问题中的应用价值。

weixin_34161029的博客 501

模糊综合评价模型

一.引子 1.数学归纳法:同高中知识 2.秃子悖论:秃子悖论 这俩个例子都是类似于“量变引起质变”的道理,而在数学中我们把这类问题的性质叫做“模糊性”,在生活中我们也经常能遇到一些模糊的概念,比如年轻、帅、很少很多… 二.概述 模糊综合评价法是一种基于模糊数学的综合评价方法。该综合评价法根据模糊数学的隶属度理论把定性评价转化为定量评价,即用模糊数学对受到多种因素制约的事物或对象做出一个总体的评价。它具有结果清晰,系统性强的特点,能较好地解决模糊的、难以量化的问题,适合各种非确定性问题的解决。——来自百度百

The__Tyche的博客 2万+

学习stm32H7之路开始(STM32H7系列1) 前期准备,HAL库框架

2020.01.07 几个重要的参考网址 1.电子工程世界网 http://tags.eeworld.com.cn/tags/STM32H7 链接: link. 2.转:https://blog.youkuaiyun.com/simon223/article/list/2?t=1 链接: link. ———————————————— 版权声明:本文为优快云博主「Simon223」的原创文章,遵循 CC 4....

kengkengkeng963的博客 3411

qq拼音纯净版下载QQPinyin_Setup_1.3.1265.400

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34221036的博客 2656

Vivado2022.2下载安装

链接:https://pan.baidu.com/s/1lyfE2d-VmaWC-_aR8ratCQ提取码:mt09。

weixin_61081689的博客 2万+

https://my.oschina.net/u/4107293/blog/3100208

  人工智能这个词,从诞生到一路坎坷地迎来辉煌,就注定与“模拟”紧密相连。   1956年,在新罕布什尔州达特茅斯学院的一次小型会议上,赫伯特西蒙、约翰麦卡锡、克劳德香农等AI界的开山鼻祖们,就提出了“智能的任何特征,原则上都可以精确描述,因此我们可以制造机器来对它进行模拟”。   当代也...

4502

OpenClaw 安装失败:npm install 多次报错的完整排错与解决方案

这次问题的最终解决,其实并不复杂,但关键在于思路的转变:从“脚本怎么又失败了”,切换为“npm 在这一层到底失败在哪里”。当我们手动复现安装过程、打开 verbose 日志、直面真实错误栈时,问题就不再是模糊的“安装不了”,而是一个可以被定位、被验证、被修复的具体工程问题。

博客 1万+

5、模型预测控制与分布式MPC控制结构解析

本文深入解析了模型预测控制(MPC)中的双模式预测控制及其稳定性理论,并探讨了分布式MPC的不同控制结构。内容涵盖MPC的基本公式化、性能指标、优化问题以及相关算法步骤,同时比较了集中式MPC、单层分布式MPC和分层分布式MPC的优缺点和适用场景。最后通过流程图和表格形式总结了双模式MPC的算法步骤和控制结构选择思路,并提供了操作建议,以帮助在实际工业系统中更好地应用MPC技术。

tea88的博客 170

solr:关于dismax的使用情况

首先说说 dismax这个功能,它是基于lucene的DisjunctionMaxQuery去 扩展的,就是说,实际上用到的就是DisjunctionMaxQuery的这个查询类。查询api,可以知道是 对查询的几个域中,取最大的打分,而不是想boolean查询那样,要几个域的查询的分数叠加。 1、q.alt, 没有看明白 2、qf对默认查询增加权重比值,比如:f

u012985257的博客 907

【ARM Trace32(劳特巴赫) 高级篇 20 -- SNOOPer 使用介绍】

在 Lauterbach TRACE32 调试系统中,Snooper是一种特殊的监视工具,它能够在不中断处理器执行的情况下监视和记录特定内存地址的数据变化。这对于系统级调试、性能分析、数据流监视以及实时系统的问题追踪特别有用,尤其是在无法使用中断的情况下。当你设置了一个或多个Snooper时,TRACE32 硬件将不断地监视指定的内存地址,一旦发生了读写操作,就会将相关信息记录下来。这样你就可以看到某个地址的数据是什么时候以及如何被修改的,而不会影响目标系统的运行。

CodingCos的博客 2769

mac pro m1:搭建zookeeper集群并设置开机自启

之前我们讲解过,但在实际生产中,为了保证服务高可用,通常我们是采用集群模式。所以本次我们来实操集群模式的搭建。

55555的博客 2215

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Centos7上Zookeeper集群搭建,并设置开机自启

1、下载Zookeeper 下载链接: http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.13/ 2、将安装包上传到需要搭建Zookeeper集群的目录下,比如/opt master 192.168.0.243 slave1 192.168.0.74 slave2 192.168.0.250 3、解压并重命名文件 tar...

斌小哥的博客 377

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Solr之搭建Zookeeper集群并设置开机自启

至此,一个基于Apache ZooKeeper的集群已搭建完成,并设置为开机自启。根据操作系统类型,使用相应的服务管理工具(如System V init、Upstart、Systemd等)创建ZooKeeper服务单元,使其在系统启动时自动运行。命令行工具或第三方监控工具(如ZooKeeper Observer)连接到任意节点,验证集群状态、节点角色(Leader/Follower)等信息。确保每个节点使用不同的数据目录,并拥有合适的权限。用户,请替换为实际运行ZooKeeper的系统用户。

qq_33240556的博客 644

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Centos7下搭建ZooKeeper集群并设置服务脚本启动

一、zookeeper集群的搭建与配置 1. 可以访问查看zookeeper官网: zookeeper.apache.org 2. 下载zookeeper 3.3.6,下载地址:http://archive.apache.org/dist/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz 3. 上传到/usr/local/目录下,并解压,命令:tar -xvf zookeeper-3.3.6.tar.gz 4. 将zookeeper重命名,命令:mv z

bug的博客 695

zookeeper集群及mycat配置搭建

第一部分 zookeeper环境 环境:3台机器 192.168.109.132-134 centos7.2   1 linux环境设置 #关闭防火墙 systemctl stop firewalld.service systemctl disable firewalld.service   #关闭SELINUX sed -i's/SELINUX=enforcing/SELI

zefuzhang的博客 6518

Zookeeper集群搭建

准备: 1.安装JDK。 2.下载zookeeper包 [root@bogon zk]# wget https://archive.apache.org/dist/zookeeper/zookeeper-3.5.5/apache-zookeeper-3.5.5-bin.tar.gz 安装 解压: [root@bogon zk]# tar -zxvf apache-zookeeper-...

g315583688的博客 193

基于docker搭建Kafka集群,使用KRaft方式搭建,摒弃Zookeeper

环境:已成功搭建kafka服务 192.168.2.91 192.168.2.92 192.168.2.93。

m0_54138989的博客 1497

zookeeper集群的搭建

source /usr/local/apache-zookeeper-3.8.3-bin/bin/zkServer.sh start是在远程服务器上执行的命令,它启动Zookeeper服务。我记得之前有几种方法可以干预节点的选取,我忘了,目前好的方法是启动的时候主节点放在n+1/2的位置....但是启动的时候挂掉一个就完蛋了,目前就这样,重心不在这里,睡觉。并且 违背我的本意,本意是主节点是1003 选举机制 是 1002 启动达到2/1,所以还需要设置主节点,有可能涉及到选举机制的改变。

m0_72318572的博客 1168

zookeeper基本集群搭建

参考文档:https://blog.youkuaiyun.com/pucao_cug/article/details/72228973 1, 下载 http://mirror.bit.edu.cn/apache/zookeeper/ 2, jdk下载 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133...

yangkei 337

本地搭建zookeeper集群

搭建单个zookeeper 链接:https://pan.baidu.com/s/1nW2891n4BpsS-NZEhBsWLA&shfl=sharepset 提取码:dbnm 复制这段内容后打开百度网盘手机App,操作更方便哦 复制3个zookeeper文件夹 zoo.cfg配置文件,都要配,本地集群是时候,端口要不同。 在data 目录下创建...

蔡文彬的博客 688

zookeeper集群搭建

Zookeeper版本:zookeeper-3.4.11 JDK版本:1.8.0_161 服务器:192.168.1.150 服务器节点 zoo.conf配置 192.168.1.150:2811 /usr/local/zookeeper-3.4.11/conf/zoo_1.cfg配置 dataDir=/usr/...

wen_005的博客 240

solr7.5+zookeeper3.5.5 搭建solr集群

一.搭建背景 由于单机版solr在负载、并发量等方面存在诸多瓶颈,在生产环境下可能因为访问量过大造成solr宕机,因此需要搭建solr集群来确保大访问量时solr正常工作。SolrCloud是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时可使用此方案。 二....

chuzao6156的博客 503
上一篇: 导出Excel
下一篇: dubbo服务者配置说明
杜引强
博客等级 码龄13年 806粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值