上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 47 下一页
摘要: 前言 Thrift是一个可以跨平台,跨语言的RPC(远程过程调用)框架,通过IDL(接口描述语言)来定义数据类型和接口,相当于Protobuf和gRPC的结合体。Thrift最开始由Facebook开源,后来贡献给了Apache。 下载编译器 官网,这里我们下载windows版本的编译器thrift 阅读全文
posted @ 2022-04-13 12:52 strongmore 阅读(483) 评论(0) 推荐(0)
摘要: 前言 gRPC是一个谷歌推出的高性能的RPC框架,遵从server/client模型,可以使client调用server的接口就像调用本地方法一样简单,gRPC使用ProtoBuf来定义数据类型和接口,相比RestAPI,传输数据更少,性能更高。 下载proto编译器 不仅需要下载protoc编译器 阅读全文
posted @ 2022-04-12 09:30 strongmore 阅读(651) 评论(0) 推荐(0)
摘要: 前言 在学习Netty时,发现可以整合ProtoBuf相关的处理器,所以先来学习一下ProtoBuf相关知识。 关于ProtoBuf ProtoBuf可以看做一个序列化(对象转成字节数组)和反序列化(字节数组转成对象)工具。相比Java本身的序列化,ProtoBuf可以支持跨语言,如使用Java序列 阅读全文
posted @ 2022-04-10 13:01 strongmore 阅读(1004) 评论(0) 推荐(0)
摘要: 前言 今天在学习Apollo(配置中心)的客户端源码时,发现其中使用到了guice,它是谷歌推出的一个轻量级(相比Spring)的依赖注入框架,在很多开源项目中都有用到,如elasticsearch,maven等。 添加依赖 <dependency> <groupId>com.google.inje 阅读全文
posted @ 2022-04-09 14:44 strongmore 阅读(670) 评论(0) 推荐(0)
摘要: 前言 WebSocket也是一种应用层协议,也是建立在TCP协议之上,类似HTTP,并且兼容HTTP。相比HTTP,它可以实现双向通信,如聊天室场景,使用HTTP就必须客户端轮训查询服务器有没有新的消息,而使用WebSocket就可以服务器直接通知客户端。 Tomcat支持 Tomcat自7.0.5 阅读全文
posted @ 2022-04-07 11:40 strongmore 阅读(1205) 评论(1) 推荐(0)
摘要: 前言 i18n(其来源是英文单词 internationalization 的首末字符i和n,18为中间的字符数)是"国际化"的简称。对程序来说,可以在不修改内部代码的情况下,根据不同语言及地区显示不同的页面。 准备工作 IDEA中properties文件默认的编码为GBK,需要修改为UTF-8。 阅读全文
posted @ 2022-04-05 13:32 strongmore 阅读(237) 评论(0) 推荐(0)
摘要: 前言 DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个应用层协议。当我们将客户主机IP地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户端机器能够利用这个IP上网。我们的电脑和手机使用WIFI的时候,都是 阅读全文
posted @ 2022-03-19 22:48 strongmore 阅读(1651) 评论(0) 推荐(0)
摘要: 前言 今天使用美团外卖时,发现可以按照距离对商家进行排序,就想研究一下地图上的两个点之间的距离是如何计算出来的。 原理 假设地球上有A(ja,wa),B(jb,wb)两点,根据经纬度计算球面距离的公式为 R 地球半径 arccos 反余弦函数 cos 余弦函数 sin 正弦函数 ja,jb A和B的 阅读全文
posted @ 2022-03-17 17:17 strongmore 阅读(942) 评论(0) 推荐(0)
摘要: 前言 DNS(Domain Name System)域名系统,因为访问一台服务器只能通过IP来访问,所以需要先将域名转换成IP地址。 解析流程 以chrome浏览器访问mail.baidu.com网址为例, 检查浏览器缓存中是否存在该域名对应的IP,如果存在则解析结束,否则继续。 检查操作系统的ho 阅读全文
posted @ 2022-03-16 23:47 strongmore 阅读(881) 评论(0) 推荐(1)
摘要: 例子代码 public class Client { public static void main(String[] args) throws InterruptedException { Thread thread = new Thread(() -> { System.out.println( 阅读全文
posted @ 2022-03-14 19:57 strongmore 阅读(604) 评论(0) 推荐(0)
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 47 下一页