Kafka的生产者优秀架构设计
Kafka 是一个高吞吐量的分布式的发布订阅消息系统,在全世界都很流行,在大数据项目里面使用尤其频繁。笔者看过多个大数据开源产品的源码,感觉 Kafka 的源码是其中质量比较上乘的一个,这得益于作者高超的编码水平和高超的架构设计能力。Kafka 的核心源码分为两部分:客户端源码和服务端源码,客户端又分为生产者和消费者,而个人认为 Kafka 的源码里面生产者的源码技术含量最高,所以今天给大家剖析
Banana Pi BPI-F2S IC设计与Xilinx Artix-7 FPGA教育学习开发套装 Sunplus SP7021
主板采用Banana Pi BPI-F2S 主板,板上有FPGA接口。采用Xilinx Artix-7 XC7A100T FPGA芯片方案。提供完善的软件与学习资料
BPI-F2P工业控制网关开发套装,支持4G ,Wifi ,SATA ,RS232,RS485
主板采用Banana Pi BPI-F2P 主板,板上有双网口,PoE供电支持,再加上BPI-F2P-SUB扩展板,支持支持4G ,Wifi ,SATA 接口,功能丰富,可以做工业互联网控制的各种开发。
高德技术评测建设之路
本文试图阐述评测这一新岗位在高德的主要职责,发展进化过程,以及这一岗位所负责的产品效果评估手段与体系搭建。
在 go 语言中利用反射精简代码
反射是 Go 语言中非常重要的一个知识点。反射是设计优雅程序的法宝,orm json 序列化,参数校验都离不开它,我们今天以一个业务开发中的实例,来简单讲解下反射在日常开发中的用处。本文使用的 case 皆为项目开发中的实例,为了脱敏简化了代码相信大家在使用 go 编写业务代码的时候都会写过这样的代码,这类代码的本质是,将一个集合中的数据按照名称绑定到结构体的对应属性上去,集合的类型不限于 map
基于SysML和EA进行系统设计与建模培训
什么是SysML 为什么用SysML SysML和UML的关系 SysML 建模框架 SysML建模实例
SaaS(软件即服务) 的架构设计,是什么样子的
1、介绍从计算机诞生开始,就伴随着计算机应用程序的演变。简短的回顾历史,我们可以清楚的看到应用程序发生的巨大变化。上世纪70年代中期,随着个人PC机的爆炸式增长以及程序员的崛起,让计算机的计算能力得到了大跨越的提升,个人PC机上可以运行非常复杂的应用程序。进入上世纪80年代,随着Bulletin BoardSystem(简称:BBS)电子公告板系统的兴起,它可以为广大PC机用户提供基本的在线服务,
Java程序员,按照这份模板“优化”简历,至少让你涨薪50%!
一份好的简历不光说明事实,更通过FAB模式来增强其说服力
深入理解Java多线程与并发框(第⑦篇)——volatile 关键字
概念把对 volatile变量的单个读/写,看成是使用 同一个监视器锁 对这些单个读/写操作做了 同步。 原理:插入内存屏蔽指令,禁止一定条件下的重排序。volatile 是轻量级的同步机制举例说明:public class Assignment { int value = 1; /** &n
深入理解Java多线程与并发框(第⑤篇)——顺序一致性模型
一、竞态条件(Race Condition)计算的正确性取决于 多个线程 执行的 时序 时,就会发生 竞态条件。二、顺序一致性模型对内存可见性的保证 对多线程并发时的串行化保证顺序一致性模型的两大特征:一个线程中的所有操作必须按照程序的顺序来执行。(不管程序是否同步)所有线程都只能看到一个单一的操作执行顺序。在顺序一致性内存模型中,每个操作都必须原子执行且立刻对所有线程可见。顺序一致性模型在概念上
什么是真正的架构设计?
著有畅销书:《深入理解Kafka》和《RabbitMQ实战指南》。公众号主要用来分享Java技术栈、Golang技术栈、消息中间件(如Kafka、RabbitMQ)、存储、大数据以及通用型技术架构等相关的技术。
FACEBOOK 的系统架构
Web 前端是由 PHP 写的。Facebook 的 HipHop 会把PHP转成 C++ 并用 g++编译,这样就可以为模板和Web逻贺业务层提供高的性能。业务逻辑以Service的形式存在,其使用Thrift 。这些Service根据需求的不同由PHP,C++或Java实现(也可以用到了其它的一些语言……)用Java写的Services没有用到任何一个企业级的应用
Microchip推出简化安全认证产品,为全球提供技术服务
前言:Microchip Technology Inc.是致力于智能、互联和安全的嵌入式控制解决方案的领先供应商。 其易于使用的开发工具和丰富的产品组合让客户能够创建最佳设计,从而在降低风险的同时减少系统总成本,缩短上市时间。Microchip的解决方案为工业、汽车、消费、航天和国防、通信以及计算市场中12万多家客户提供服务。Microchip总部位于美国
微服务的Zuul通配符规则
需要注意"/**和/*的区别
如何建立架构师的立体化思维?
从程序员往架构师转型的路上,蔡学镛老师总结的“四维架构设计方法论”对我颇有帮助,让我对架构设计有了更立体化、系统化的认知,现将学习心得分享出来供需要的小伙伴参考。这套方法论通过空间(X、Y、Z)三个维度及时间T维度将问题域解构成可以轻松应对的小方块,分而治之。多维度、立体化、分层次、动态演进,这是我对这套方法论特点的总结。
如何设计出优美的Web API?
WEB API的应用场景非常丰富,例如:将已有系统的功能或数据开放给合作伙伴或生态圈;对外发布可嵌入到其他网页的微件;构建前后端分离的WEB应用;开发跨不同终端的移动应用;集成公司内部不同系统等等。在上述场景里,你可能是WEB API的使用者,也可能是设计者,但你知道如何评判WEB API的优劣吗?
Java常见知识点汇总(⑮)——Jvm架构
一. 什么是JVMJVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节
Java内部类详解--匿名内部类
匿名内部类 匿名内部类应该是平时我们编写代码时用得最多的,在编写事件监听的代码时使用匿名内部类不但方便,而且使代码更加容易维护。下面这段代码是一段Android事件监听代码:scan_bt.setOnClickListener(new OnClickListener() { &n
Java内部类详解--局部内部类
局部内部类 局部内部类是定义在一个方法或者一个作用域里面的类,它和成员内部类的区别在于局部内部类的访问仅限于方法内或者该作用域内。class People{ public People() {  
平台型产品功能设计的需求抽象与升维适配|专访宜信郭建伟
平台型产品经理需要具备“对业务的结构化理解”,“先抽象提炼”再“反向适配具体业务需求”。