破解既有的行业痛点,解决信息流、业务流、资金流、物流等工业电商核心的方案
解决商品、商家与海关和国检系统备案,订单跨境支付和一键报关的方案
提供车源发布、车源查找、求购发布、报关报检、汽车物流、汽车配件相关服务
全网平台搭建,多触点连接用户,母婴店,专卖店、卖场、商城系统多模式并存
“互联网+零售” 对实体进行补充,又能让企业通过大数据更好地了解消费者需求
汽车配件电商平台能够打通产业链、提高工作效率、去中间化、降低成本等
农产品电商平台直连农产品产地,溯源追溯,传统农业与互联网+进行优质结合
在线考试/教育培训/职业技能/企业内训等,提供教育各个行业的解决方案
使用Spring Boot开发风格做到一键启动和部署,简化分布式系统开发,易二次开发和维护
易写区块链,定制开发私链、联盟链、公链,提供所有源代码,适合二次开发
平台自营+供应商入驻,的高并发解决方案,SpringCloud Alibaba技术架构
区块链+溯源不可篡改,溯源追溯,传统行业(例如农业等)与区块链进行优质结合
供求、求购方数据整合,双向打通货源“供应链”和全渠道“销售链”的电商平台
知识付费/教育培训/职业技能/企业内训等,源码100%开源的在线课堂软件
互联网的技术架构、全新的UI设计、丰富促销体系、多种支付方式、快递实时跟踪
多题型、题库测试、错题收集、章节练习、试卷练习、考试记录、自动判卷、发放证书
易写科技电商系统主体框架全部采用Apache主流框架进行开发,没有任何二次封装,方便二次开发
采用SpringCloud Alibaba技术架构,基于Maven构建,数据库读写分离、支持分库分表、独立图片和搜索服务器等
易写科技商城由京东、海尔电商公司互联网人开发而成,拥有解决高并发、高可用、秒杀等电商方面丰富的经验
易写科技商城代码和数据库开源,数据库每个表、每个字段都有注释,代码每个方法都有注释
易写科技商城系统可以有效防止SQL注入、XSS攻击、CSRF攻击、核心模块采用MD5加密传输,保证系统和数据安全
易写科技商城系统不仅在架构和代码层面把细节做到了,并且在业务流程也是
我们通过学习借鉴,哪些项目或应用都使用了ZooKeeper,可以了解我们的应用使用ZooKeeper是否能真正地带来价值,当然,有些项目可能也未必非常适合使用ZooKeeper,我们要批判地学习、借鉴和吸收。下面是一些使用了ZooKeeper实现的案例:
HDFS HA(QJM)
Hadoop 2.x之前的版本,HDFS集群中Namenode是整个集群的中央元数据存储和服务节点,它存在SPOF的问题。在2.x版本中,提出了各种HA方案, 避免Namenode的SPOF问题,其中基于QJM(Quorum Journal Manager)的方案可以解决这个问题:使用QJM的方案中,HDFS集群中存在两类节点,一类是Namenode节点(包括Active状态的 Namenode,和Standby状态的Namenode),另一类是JournalNode,进行容错。当Active状态的Namenode元数据 发生改变时,通过JournalNode进程(ZooKeeper集群中)来监视这种变化,然后同步到Standby状态的Namenode节点(实际上 同步的是EditLog镜像文件内容的变更)。当Active状态的节点发生故障后,Standby节点的Namenode自动切换,并接管HDFS集群中Active状态Namenode的服务,用来向客户端提供元数据服务。
Solr
Solr是一个开源的分布式搜索引擎,支持索引的分片和复制,可以根据需要来线性增加节点,扩展集群。Solr使用ZooKeeper主要实现如下功能:
配置文件的管理:每个Collection都有对应的配置文件,多个分片共享配置文件(schema.xml、solrconfig.xml)
Collection管理:一个Solr集群可以有多个逻辑上独立的Collection,每个Collection又包括多个分片和副本
集群节点管理:Solr集群中有哪些活跃的节点可以使用,每个节点上都有Collection的分片(Shard)
Leader分片选举:一个Collection的多个分片可以设置冗余的副本,一个分片的多个副本中只有一个Leader可以进提供服务,如果某个存储Leader分片的节点宕机,Solr基于ZooKeeper来重新选出一个Leader分片,持续提供服务
HBase
HBase是一个基于Hadoop平台的开源NoSQL数据库,它使用ZooKeeper主要实现如下功能:
Master选举:HBase基于Master-Slave模式架构,可以有多个HMaster,使用ZooKeeper实现了SPOF下Master的选举
租约管理:客户端与RegionServer交互时,会生成租约,该租约对象具有有效期
表元数据管理:HBase中包括用户表及其两个特殊的表:-ROOT-表和.META.表(例如,管理-ROOT-表中location信息,一个-ROOT-表只有一个Region,它保存了RegionServer的地址信息。)
协调RegionServer节点:数据变更会通过ZooKeeper同步复制到其他节点
Lily
Lily是一个分布式数据管理平台,它基于Hadoop、HBase、Solr、ZooKeeper实现。使用ZooKeeper来注册Lily Node,从而管理集群节点的状态信息。
Dubbo
Dubbo是阿里巴巴开源的分布式服务框架,它可以选择使用ZooKeeper作为服务注册中心。Dubbo服务基于Provider- Consumer模型,在服务发布的时候可以选择使用ZooKeeper作为注册中心来管理注册的服务,包括Provider发布的服务和 Consumer订阅的服务。
Katta
Katta实现了Lucene的分布式索引,能够提供数据的实时访问。Katta使用ZooKeeper实现了集群节点的管理,Master的选举,以及Lucene索引的管理。
Strom
Storm流式计算框架使用ZooKeeper来协调整个计算集群,Storm计算集群存在Nimbus和Supervisor两类节点。 Nimbus负责分配任务(Topology),将任务信息写入ZooKeeper存储,然后Supervisor从ZooKeeper中读取任务信息。 另外,Nimbus也监控集群中的计算任务节点,Supervisor也会发送心跳信息(包括状态信息)到ZooKeeper中,使得Nimbus可以实 现状态的监控,任何计算节点出现故障,只要重新启动之后,继续从ZooKeeper中获取数据即可继续执行计算任务。
BookKeeper
BookKeeper是Apache ZooKeeper项目的一个子项目。它是一个用来可靠地记录流数据的系统,主要用于存储WAL(Write Ahead Log)。
我们知道,Hadoop Namenode用来存储HDSF集群的元数据,其中存在一个用于写就花数据的EditLog文件,和一个存在于内存中的FsImage镜像,每当客户端 与HDFS集群交互时,对于集群中数据的变更都会记录在Namenode的EditLog文件中,然后再将该变更同步到内存的FsImage镜像上。
在BookKeeper中,服务节点(多个)称为Bookie,日志流(Log Stream)称为Ledger,每个日志单元(如一条记录)被称为Ledger条目。一组服务节点Bookie主要存储Ledger,Ledger的类 型非常复杂多样,那么可能某一个Bookie节点可能发生故障,然而只要我们的BookKeeper系统的多个服务节点Bookie存储中存在正确可用的 节点,整个系统就可以正常对外提供服务,BookKeeper的元数据存储在ZooKeeper中(使用ZooKeeper存储的只是元数据,实际日志流 数据存储在Bookie中)。
Hadoop HDFS HA基于BookKeeper系统,可以实现HDFS Namenode的高可用性,这种方案称为BJM(BookKeeper Journal Manager),HDFS HA的另一种方案叫做QJM(Quorum Journal Manager)。可以参考相关文档,在后面会给出参考连接。
HedWig
HedWig是基于ZooKeeper和BookKeeper的发布-订阅系统。在HedWig系统中,使用ZooKeeper来持久化系统的元数据,使用BookKeeper来存储实际的消息数据。
工作日:9:00-18:00
售前:18612670879
微信:18612670879
Q Q:43006111