wechat

Elasticsearch集群管理之添加、删除节点

て烟熏妆下的殇ゞ 提交于 2020-08-11 13:44:14
文章转载自: https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484242&idx=1&sn=8215077417867e3eb6311665589f569c&chksm=eaa82b7adddfa26c97a7c417f0d8cc42e74d5ebd9360ba6013392db3557e89a8ddba8cce1a68&scene=21#wechat_redirect 1、问题抛出 1.1 新增节点问题 我的群集具有黄色运行状况,因为它只有一个节点,因此副本保持未分配状态,我想要添加一个节点,该怎么弄? 1.2 删除节点问题 假设集群中有5个节点,我必须在运行时删除2个节点。 那么如何在不影响指数的情况下完成? 我有接近10 Gb/hour的连续数据流,这些数据正在连续写入并索引化。 重新平衡会对此有所影响吗? 本文就从上面两个问题说起,将相关知识点串起来,内容较长,阅读时间5分钟+。 2、知识点 2.1 Master节点的职责 主节点的主要作用之一是确定将哪些分片分配给哪些节点,以及何时在节点之间移动分片以重新平衡集群。 2.2 分片分配发生的时机 分片分配是将分片分配给节点的过程。 这可能发生在集群初始恢复,副本分配,重新平衡或添加或删除节点期间。 2.3 控制分配/重新平衡分片操作的常见设置 2.3.1

Elasticsearch 趋势科技实战分享笔记

≯℡__Kan透↙ 提交于 2020-08-11 12:11:06
文章转载自: https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484113&idx=1&sn=6c40d7f5d68840af1ea9a1fd38249dbd&chksm=eaa82af9dddfa3efead2861f681b3869397573740c01238c6286900ef40f6649cdaf2cc1e941&scene=21#wechat_redirect 1、Elasticsearch 索引的设计 1.1 单一索引还是基于时间的索引? 单一索引的问题: 1)不能更新Mapping。 比如:主分片数不可以修改(除非reindex)。 2)无法灵活、快速地扩展。 3)更适合固定、小型数据集。 基于时间的索引面临的问题: 1)如何确定间隔? 数据量 变更频率 默认尝试每周为单位分割——建议 2)如何实施? 索引模板 1.2 定义索引注意事项 举例: { "facet_internet_access_minute":{ "template":"ce-index-access-v1-*", "order":0, "settings":{ "number_of_shards":5 }, "aliases":{ "{index}-query":{ } }, "mappings":{ "es_doc":{

图解 Java 中的数据结构及原理!

坚强是说给别人听的谎言 提交于 2020-08-11 11:31:03
作者:大道方圆 cnblogs.com/xdecode/p/9321848.html 最近在整理数据结构方面的知识, 系统化看了下Java中常用数据结构, 突发奇想用动画来绘制数据流转过程。 主要基于jdk8, 可能会有些特性与jdk7之前不相同, 例如LinkedList LinkedHashMap中的双向列表不再是回环的。 HashMap中的单链表是尾插, 而不是头插入等等, 后文不再赘叙这些差异, 本文目录结构如下: LinkedList 经典的双链表结构, 适用于乱序插入, 删除. 指定序列操作则性能不如ArrayList, 这也是其数据结构决定的. add(E) / addLast(E) add(index, E) 这边有个小的优化, 他会先判断index是靠近队头还是队尾, 来确定从哪个方向遍历链入. 1 if (index < (size >> 1)) { 2 Node<E> x = first; 3 for (int i = 0; i < index; i++) 4 x = x.next; 5 return x; 6 } else { 7 Node<E> x = last; 8 for (int i = size - 1; i > index; i--) 9 x = x.prev; 10 return x; 11 } 靠队尾 get(index)

机器学习入门:极度舒适的GBDT原理拆解

亡梦爱人 提交于 2020-08-11 11:05:40
机器学习入门:极度舒适的GBDT拆解 本文旨用小例子+可视化的方式拆解GBDT原理中的每个步骤,使大家可以彻底理解GBDT Boosting → Gradient Boosting Boosting是集成学习的一种基分类器(弱分类器)生成方式,核心思想是通过迭代生成了一系列的学习器,给误差率低的学习器高权重,给误差率高的学习器低权重,结合弱学习器和对应的权重,生成强学习器。 Boosting算法要涉及到两个部分,加法模型和前向分步算法。 加法模型就是说强分类器由一系列弱分类器线性相加而成。一般组合形式如下: $$F_M(x;P)=\sum_{m=1}^n\beta_mh(x;a_m)$$ 其中,$h(x;a_m)$就是一个个的弱分类器,$a_m$是弱分类器学习到的最优参数,$β_m$就是弱学习在强分类器中所占比重,P是所有$α_m$和$β_m$的组合。这些弱分类器线性相加组成强分类器。 前向分步就是说在训练过程中,下一轮迭代产生的分类器是在上一轮的基础上训练得来的。也就是可以写成这样的形式: $$F_m (x)=F_{m-1}(x)+ \beta_mh_m (x;a_m)$$ Gradient Boosting = Gradient Descent + Boosting Boosting 算法(以AdaBoost为代表)用错分数据点来识别问题,通过调整错分数据点的权重来改进模型

微信公众平台开发(十) 消息回复总结

﹥>﹥吖頭↗ 提交于 2020-08-11 11:01:41
一、简介 微信公众平台提供了三种消息回复的格式,即文本回复、音乐回复和图文回复,在这一篇文章中,我们将对这三种消息回复的格式做一下简单讲解,然后封装成函数,以供读者使用。 二、思路分析 对于每一个POST请求,开发者在响应包中返回特定xml结构,对该消息进行响应(现支持回复文本、图文、语音、视频、音乐)。 三、文本回复 3.1 文本回复xml 结构 < xml > < ToUserName > <![CDATA[ toUser ]]> </ ToUserName > < FromUserName > <![CDATA[ fromUser ]]> </ FromUserName > < CreateTime > 12345678 </ CreateTime > < MsgType > <![CDATA[ text ]]> </ MsgType > < Content > <![CDATA[ content ]]> </ Content > </ xml > 3.2 结构说明 3.3 具体实施 针对上面给出的xml 结构,我们只需要在对应的位置填上内容,然后格式化输出就可以了。 说明: ToUserName 位置上填写的是$fromUsername = $postObj->FromUserName,就是把消息返回给发送信息过来的用户,即接收方账号。 FromUserName

超长待机梅雨季

对着背影说爱祢 提交于 2020-08-11 10:56:10
点击上方“蓝字”关注我们吧! 7月18日,浙江宣布“出梅”,告别长达50天的2020年超长待机梅雨季。 作为包邮区首位摆脱梅雨的“幸运儿”,状态尚未回归,便一头又栽入高温陷阱。7月19日,浙江大部地区最高气温破35℃, 温州市文成站气温高达38.6℃ !**中央气象台预计,7月21日,我国主雨带将北抬,**主要位于四川盆地北部至黄淮一带。 这是否意味着南方的“暴力梅”已进入尾声? <svg viewBox="0 0 1 1" style="vertical-align:top;"></svg> <svg viewBox="0 0 1 1" style="vertical-align:top;"></svg> 萌台降雨大数据 回答这个问题之前,让我们再来回顾一下近2个月的强降雨数据单。6月1日至7月19日, 长江流域平均降雨量479.5毫米,为1961年以来历史同期最多 ;按地区统计, 安徽、湖北、重庆3省(市)降雨量为历史同期最多 ,江苏、浙江、江西、贵州4省降雨量为历史同期第2多。 7月17日至19日,新一轮强降雨集结淮河中上游,安徽六安、合肥和河南信阳的部分地区累计降雨量有300~500毫米, 六安局地达642毫米,安徽六安、霍山等4个国家气象观测站日雨量突破建站以来极值 。受强降雨影响,淮河流域发生1号洪水;20日,王家坝水文站出现超保证水位并泄洪。 王家坝泄洪 <svg

滴滴推理引擎IFX:千万规模设备下AI部署实践

帅比萌擦擦* 提交于 2020-08-11 10:53:21
桔妹导读:「滴滴技术」将于本月开始,联合各技术团队为大家带来精彩分享。你想了解的技术干货,深度专访,团队及招聘将于每周三与你准时见面。本月为「滴滴云平台事业群分享月」,在今天的内容中,云平台事业群-机器学习平台团队与你聊一聊AI技术在滴滴平台上的实践思考。IFX 团队经过 2年多的奋斗,已将 AI 部署服务于公司安全、地图、车载、普惠、车服、IT等业务团队,覆盖司乘 APP,桔视设备,代驾记录仪,AIBox(边缘计算 AI 盒子),国际化司乘 APP 等智能化需求的场景,覆盖千万级别设备,千亿级别日活调用量。 1.背景 随着人工智能技术的发展,深度学习技术在工业界得到了广泛的应用。数据、算法、算力三个维度的协同发展,逐步将 AI 推向成熟期,并且渗透到生活的方方面面。 滴滴拥有海量出行大数据,同时拥有大量的司乘端手机用户、桔视设备(车载摄像头)、GPU 集群等算力平台,对云、边、端 AI 能力的发掘将迎来一个黄金时代。滴滴机器学习团队从 2018 年 9 月开始调研和搭建自研推理引擎平台 IFX,在 2018 年 12 月开始对内提供服务,并在司机端和乘客端 APP 中落地。经历了 2 年的发展,IFX 已经在公司的大量业务中得到应用,服务于订单和准入的关键路径,司乘支付绑卡、实名认证、金融安全、提现等业务流程,高危场景识别,费用判责,追尾碰撞检测,定位导航,路网更新等业务场景

我的开发日记(三)

泄露秘密 提交于 2020-08-11 10:43:45
今天主要解决了一下测试账号登录状态的校验,我现在的方案是用户在写测试用例的时候使用特殊语法 uid=123 这样的形式,表示该用例字段应该去 uid 等于 123 的测试账号的登录凭证。难点在于登录凭证会过期,会被挤掉,如果维护所有测试用户的登录状态又很麻烦,对服务器性能也是一种浪费。 所以最终的方案如下: A、单独用例调试过程中使用中,预留一个凭证的有效期。有效期过了之后会继续校验凭证的有效性,如果成功,则重置有效期,如果失败则从登陆接口重新获取用户登录凭证并更新有效期 B、运行用例集(多个用例)时,采用多线程并发执行,为了保证每个测试用户的登录凭证有效性,每次只允许一个线程去执行A的逻辑。运行用例集过程中对用户凭证进行缓存,这样就不用从数据库中重复读取了。 在并行运行测试用例的时候,如果保证所以线程都能读到最新的用户凭证,且往缓存 map 中读取的数据正确性,想了一个方案就是在 JVM 里面对每一个用户进行加锁的操作,保证每一次只有一个线程去读写用户登录凭证。这样在单个用户运行的时候就可以登录一次,短时间内不用去登录即可持续进行用例的调试。在运行用例集的时候,每次运行创建一个临时的 map 存放本次用到的用户登录凭证,用例集内的测试用例执行完,该对象就释放,等着被 GC 回收。 用户对象锁存放类 这里用到之前一个知识点: Lambda表达式在线程安全Map中应用 。

用 HTTPS 就安全了?HTTPS 会被抓包吗?

☆樱花仙子☆ 提交于 2020-08-11 05:28:11
作者:leapMie 的博客 https://blog.leapmie.com/archives/418/ 随着 HTTPS 建站的成本下降,现在大部分的网站都已经开始用上 HTTPS 协议。大家都知道 HTTPS 比 HTTP 安全,也听说过与 HTTPS 协议相关的概念有 SSL 、非对称加密、 CA证书等,但对于以下灵魂三拷问可能就答不上了: 为什么用了 HTTPS 就是安全的? HTTPS 的底层原理如何实现? 用了 HTTPS 就一定安全吗? 本文将层层深入,从原理上把 HTTPS 的安全性讲透。 HTTPS 的实现原理 大家可能都听说过 HTTPS 协议之所以是安全的是因为 HTTPS 协议会对传输的数据进行加密,而加密过程是使用了非对称加密实现。但其实,HTTPS在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。 HTTPS的整体过程分为证书验证和数据传输阶段,具体的交互过程如下: ① 证书验证阶段 浏览器发起 HTTPS 请求 服务端返回 HTTPS 证书 客户端验证证书是否合法,如果不合法则提示告警 ② 数据传输阶段 当证书验证合法后,在本地生成随机数 通过公钥加密随机数,并把加密后的随机数传输到服务端 服务端通过私钥对随机数进行解密 服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后传输 为什么数据传输是用对称加密? 首先

Nacos 1.3.0 来了,基于全新内核构建!

与世无争的帅哥 提交于 2020-08-11 05:17:01
本文系投稿,作者:廖春涛(春少) https://www.yuque.com/docs/share/17664885-e0d8-40fd-a208-f1b58794d544 经过一年多发展,1.2.0版本已经从安全上解决上生产的最后疑虑,解决用户主要诉求。 经过社区讨论,从1.3.0版本开始修炼内功,聚焦“简单”、“性能”、“高可用”这核心的三个点进一步提升 Nacos 核心竞争力。今天很高兴能代表社区向大家介绍1.3.0的核心特性 内嵌关系型分布式数据库,简化集群部署模式 集群管理下沉统一,提供全新集群管理能力 一致性协议抽象升级,提供更高的性能 安全升级,解决 Fastjson 和越权风险 下面我们逐个介绍一下这些能力 轻量级的内嵌关系型分布式数据库 为什么只是用服务发现模块也要我部署 MySQL ? MySQL 集群搭建的成本有多高?不能把集群部署简单一点,像Consul、Etcd那样子? 这不,为了解决这个问题, Nacos 1.3.0 借鉴了 Etcd 的通过Raft协议将单机KV存储转变为分布式的KV存储的设计思想,基于SOFA-JRaft以及Apache Derby构建了一个轻量级的分布式关系型数据库,同时保留了使用外置数据源的能力,用户可以根据自己的实际业务情况选择其中一种数据存储方案。 从 Nacos 1.3.0版本开始集群部署可以不依赖 MySQL 的这个特性