Java 的世界里,大家广泛使用的一个高性能网络通信框架 netty,很多 RPC 框架都是基于 netty 来实现的。在 golang 的世界里,getty 也是一个类似 netty 的高性能网络通信库。getty 最初由 dubbogo 项目负责人于雨开发,作为底层通信库在 dubbo-go 中使用。随着 dubbo-go 捐献给 apache 基金会,在社区小伙伴的共同努力下,getty 也最终进入到 apache 这个大家庭,并改名 dubbo-getty 。
分类:
其他好文 时间:
2020-12-17 12:20:57
阅读次数:
2
前言大家新年快乐!新的一年第一篇技术文章希望开个好头,所以元旦三天我也没怎么闲着,希望给大家带来一篇比较感兴趣的干货内容。老读者应该还记得我在去年国庆节前分享过一篇《设计一个百万级的消息推送系统》;虽然我在文中有贴一些伪代码,依然有些朋友希望能直接分享一些可以运行的源码;这么久了是时候把坑填上了。目录结构:本文较长,高能预警;带好瓜子板凳。于是在之前的基础上我完善了一些内容,先来看看这个项目的介绍
分类:
其他好文 时间:
2020-12-16 12:56:15
阅读次数:
6
前言最近这段时间确实有点忙,这篇的目录还是在飞机上敲出来了的。言归正传,上周更新了cim第一版:为自己搭建一个分布式的IM系统。没想到反响热烈,最高时上了GitHubTrendingJava版块的首位,一天收到了300+的star。现在总共也有1.3K+的star,有几十个朋友参加了测试,非常感谢大家的支持。在这过程中也收到一些bug反馈,feature建议;因此这段时间我把一些影响较大的bug以
分类:
编程语言 时间:
2020-12-16 12:55:58
阅读次数:
6
前言记得一年前分享过一篇《一致性Hash算法分析》,当时只是分析了这个算法的实现原理、解决了什么问题等。但没有实际实现一个这样的算法,毕竟要加深印象还得自己撸一遍,于是本次就当前的一个路由需求来着手实现一次。背景看过《为自己搭建一个分布式IM(即时通讯)系统》的朋友应该对其中的登录逻辑有所印象。先给新来的朋友简单介绍下cim是干啥的:其中有一个场景是在客户端登录成功后需要从可用的服务端列表中选择一
分类:
编程语言 时间:
2020-12-16 12:54:59
阅读次数:
6
前言最近准备将公司的一个核心业务系统用Java进行重构,大半年没写Java,JDK都更新到14了,考虑到稳定性等问题最终还是选择的JDK11。在整体架构选型时,由于是一个全新的系统,所以没有历史包袱,同时团队中也有多位大牛坐镇,因此我们的选项便大胆起来。最终结果就是直接一把梭,直接上未来的大趋势:ServiceMesh,直接把什么SpringCloud、Dubbo这类分布式框架全部干掉。本次的重点
分类:
其他好文 时间:
2020-12-16 12:50:42
阅读次数:
2
§历史回顾2018年岁末,李大胖朦胧中上了开往Hbase王国的车,伴着一声长鸣,列出缓缓驶出站台,奔向无垠的广袤。(图片来自于网络)如不熟悉剧情的,可观看文章:五分钟轻松了解Hbase列式存储Hbase给初学者的“下马威”§生逢其时随着改革开放的持续推进,移动互联网的长足发展,以及物联网出现,旧有体制下的一些东西已经不能很好的适应发展的需要,无论是壁垒森严且高冷的Oracle,亦或是左右逢源并可爱
悟净真是勤奋好学,才用两天时间就手写了一个JsonBuilder出来,经过测试完全OK,而且具有开源精神,把它放到了Github上了(https://github.com/endofprogram/eop-common)。唐僧边走边想着,移动互联网大潮下,网民巨多,无时无刻都在网上。应用都进行了分层拆分,分布式部署,它们之间大都是以http为基础的接口调用。应该打造一个通用的工具来进行接口调用,或
分类:
Web程序 时间:
2020-12-16 12:18:29
阅读次数:
4
题记问题列表和答案来自国外博客(原文答案不准确,有错误),为避免误导,我对每个问题做了属于自己的理解和解答。问题都非常基础,文章有点长,但请你耐心把它看完,期望对你的Elastic求职有所帮助!1、简要介绍一下Elasticsearch?严谨起见,如下一段话直接拷贝官方网站:https://www.elastic.co/cn/elasticsearch/Elasticsearch是一个分布式、RE
分类:
其他好文 时间:
2020-12-16 12:16:10
阅读次数:
3
#1.git基本概念 ##1.1 常见版本管理工具 ###git 1.git是分布式的,每一个安装git环境的机器都有线下的版本仓库 2.开发者无需把代码提交到线上仓库(GitHub、gitee、gitlab) ###SVN 1.SVN是一个集中的版本管理工具 2.开发者必须把代码提交到SVN服务器 ...
分类:
其他好文 时间:
2020-12-16 12:00:58
阅读次数:
2
Java是一门半编译型、半解释型语言。其具有以下的11个特性: 1、简单性 没有头文件、指针运算、结构、联合、操作符重载、虚基类等。 2、面向对象 一切皆对象。 3、分布式(微服务) Java有丰富的例程库,用于处理像HTTP和FTP之类的TCP/IP协议。Java应用程序能够通过URL打开和访 问 ...
分类:
编程语言 时间:
2020-12-15 12:42:58
阅读次数:
4