- 博客(28)
- 资源 (13)
- 收藏
- 关注
原创 netty-grpc_gradle代码生成位置
代码生成位置默认位置默认代码的生成位置在$buildDir/generated/source/proto。Message在目录下的/main/java。Service在目录下的/main/grpc。位置组成生成代码位置默认在$generatedFilesBaseDir/$sourceSet/$builtinPluginName下面。先分割一下前面的默认位置:$generated...
2019-01-31 13:06:24 586
原创 netty-grpc四种方法
single-singleprotobufrpc searchStudent(Request) returns(Student){}handler public void searchStudent(Message.Request request, StreamObserver<Message.Student> responseObserver) { Stri...
2019-01-30 18:44:06 4368
原创 netty-grpc简单调用
Handlerpublic class StudentServiceHandler extends StudentServiceGrpc.StudentServiceImplBase{ @Override public void searchStudent(Message.Request request, StreamObserver<Message.Student>...
2019-01-30 13:45:30 1149
原创 netty-grpc基础准备
基本配置完整标准依据官网进行配置。依赖 compile( 'org.slf4j:slf4j-nop:1.7.25', 'io.grpc:grpc-netty-shaded:1.18.0', 'io.grpc:grpc-protobuf:1.18.0', 'io.grpc:grpc-stub:1...
2019-01-30 13:42:17 1809
原创 netty-thrift-demo
处理器public class PersonHandler implements PersonService.Iface { HashMap<String, Person> people = new HashMap<>(); @Override public Person getPersonByName(String name) throws My...
2019-01-27 23:15:08 500
原创 netty-thrift-IDL
安装参照官网进行安装。windows下载安装包windows安装比较奇葩,首先下载对应额安装包,选定版本以后,下载.exe。安装你会发现,死活点击都只是一闪而过。因为这个不是安装包,而是运行程序。thrift在windows上使用此命令程序即可,无需进行安装。为了使用方便,可以把版本号去掉:thrift-0.12.0.exe >> thrift.exe。...
2019-01-26 15:41:53 242
原创 netty-protobuf-demo
ProtoBufsyntax = "proto2";package com.godme.protobuf;option java_package = "com.godme.protobuf";option java_outer_classname = "Message";option optimize_for = SPEED;message Cat{ optional st...
2019-01-25 14:43:33 358
原创 netty-protobuf基本
文档格式syntax = "proto2";package godme;option java_package = "com.godme.protobuf";option java_outer_classname = "Message";message Person{ required string name = 1; required int32 id = 2;..
2019-01-24 21:54:55 446
原创 netty-webSocket
服务端WebSocketServerMain一样的尿性,省略WebSocketServerInitializerpublic class WebSocketServerInitializer extends ChannelInitializer&lt;SocketChannel&gt; { @Override protected void initChannel(Soc...
2019-01-24 11:11:45 168
原创 netty-心跳检测
服务端服务端还是默认的时间服务器,值得一提的是Handler中有了一些改动。TimerServerHandlerpublic class TimeServerHandler extends SimpleChannelInboundHandler<String> { @Override protected void channelRead0(ChannelHan...
2019-01-20 20:54:28 231
原创 netty-聊天服务器
服务端ServerMainpublic class ChatServerMain { public static void main(String[] args) throws InterruptedException { NioEventLoopGroup bossGroup = new NioEventLoopGroup(); NioEventLoo...
2019-01-20 00:17:24 1140
原创 IDEA-not allow to run in parallel
问题编写客户端代码,尝试开启多个客户端时,跳出这个。难不成只能单例运行不成,之前用的时候不是这样的啊。解决打开选项点击第一个就会出来下面的菜单了,我们选择Edit Configurations进入选项编辑选项勾选右上角的Allow parallel run,我们把勾给打上。效果展示这样就可以运行多个实例了,而不是只能单例运行。...
2019-01-19 22:38:19 29578 12
原创 netty-时间服务器
编解码器public class ClientInitializer extends ChannelInitializer<SocketChannel> { @Override protected void initChannel(SocketChannel ch) throws Exception { ChannelPipeline pipeline...
2019-01-19 21:34:48 200
原创 netty-客户端和服务端结构对比
之前的是服务端,客户端又是如何的呢?大体流程仍然是 Main &gt;&gt;Initializer &gt;&gt;Handler。不过具体流程上面还是有一定差异,接下来对比一下。MainClientpublic class ClientMain { public static void main(String[] args) throws Exception{ ...
2019-01-18 23:19:10 1221
原创 netty-http和handler生命周期
http之前我们好像用netty去完成了http接口的实现,不过其实存在很多坑。很多http的特性并没有真正的识别和处理。请求路径首先不论如何路径,只要是localhost:8989,后面不论跟上什么的确能够触发逻辑。必须这样改protected void channelRead0(ChannelHandlerContext ctx, HttpObject msg) throws ...
2019-01-18 00:30:45 582
原创 netty-小例子
简单逻辑梳理Created with Raphaël 2.2.0开始启动入口初始化加载handler处理方法结束总体来说,代码中的启动流程是由大到小的顺序进行的。我们首先从最外层直接启动服务,但是最细节的处理我们写在handler中,然后交给initializer进行初始化MyServerpublic class MyServer { public static void mai...
2019-01-16 16:54:39 201
原创 netty-gradle基本环境
安装gradle访问官网,按照指示进行下载配置即可,具体页面在此。觉得慢的可以使用下载我分享的百度云,提取码sg6s。解压到指定目录即可,无需安装。环境变量配置先配置GRADLE_HOME为你的解压路径,我的是d:\software\gradle。然后把可运行文件配置到PATH上,在后面添加%GRADLE_HOME%\bin;即可。环境变量不熟悉的可以通过计算机 >>...
2019-01-16 15:38:40 4931
原创 linux-字体显示样式
样式开启echo -e "\033[43mhello\033[0m]"其中的\033[nm,n∈N+n\in N^+n∈N+代表的就是开启样式,一般而言,习惯使用\033[0m作为结尾。但实际上所谓结尾是不必要的,死记硬背你也能发现一些莫名其妙的点。为什么开始是[但是却没有收尾的]尝试一下这个后面的全部都会变色,好像真的是需要关闭一样,不过等会知道模式以后,你会发现这个关其实...
2019-01-13 00:05:30 1271
原创 linux-read
readecho过了,该读取了。读取输入read name提示信息干巴巴,不知道啥意思,加点提示接收顺序一对多多对一多对多刚好缺少多余通过python中方法的传参进行理解当实参和形参个数相等,一一对应实参个数小于形参个数,多余形参默认空值实参个数大于形参个数,最后一个形参作为元组*args进行后续全部参数...
2019-01-10 01:06:38 286
原创 文章目录
博客目录查看博客,有的为了学习,但估计更多的是为了翻阅方法达到立即使用目的。但是在很多博客当中,偶尔掺杂了很多概念的铺垫,这就很难受。我要的是葫芦,你给我说蚜虫干嘛。所以很多贴心的博主会把文档的目录列在博文开头,比如这篇因为太长,或者太杂,所以这类的博文会感觉前后不连贯,没有目录让人是在云里雾里。但是把目录列出来的还真没几个。不过其实在顶栏上,本来就有目录标签所以呢,面对长篇的...
2019-01-09 23:02:45 301
原创 linux-压缩和归档
压缩压缩比:λ=oldSize−newSizeoldSize\lambda = \frac{oldSize - newSize}{ oldSize}λ=oldSizeoldSize−newSize文件准备echo "godme" > godme.fileecho "judas" > judas.filegzip压缩文件gzip godme.filegzip ...
2019-01-09 22:42:32 253
原创 linux-交换分区和回环设备
你觉得操作系统OS是什么,整合管理各硬件的无上至尊?(骨王:诶?我不知道,别问我,不关我事)。或者我们说的更加高大上一点操作系统就是把各硬件的计算资源虚拟化并提供直接使用的工具回想一下,使用电脑时,我们指定了什么硬件了么?使用VMware时,我们感觉到什么不对劲的地方了么?所以说,我们一直都是在抽象层,而我们的抽象平台正是虚拟化出来的。Windows和Linux的区别只是组织或者说抽...
2019-01-07 23:04:51 667
原创 linux-挂载
终于到挂载了,马上就可以用了。挂载挂载点一个磁盘设备,必须挂载之后才能够直接使用。怎么挂载先不说,先说说为什么要挂载。因为我们想利用它的空间读写数据,存储文件,就是这样。虽然我们的设备文件能够看到,但只是看,我们并没有深入到内部。我们想要使用它就和我们一般的文件管理一样。结果就是,我们想把它变成目录一下,能够直接对内部进行文件管理。而挂载,就是用一个目录作为入口,关联磁盘...
2019-01-07 03:15:16 199
原创 linux-格式化
文件系统支持查看Linux支持的文件系统cat /proc/filesystems这个列举出来的并不就是全部能够支持的全部文件系统类型。VFS基本涵盖了全部的文件系统,只是支持的程度问题。不过是代码级别的支持,编译之后,可能会删减一些,所以这个看到的就是删减之后能支持的了。想要支持更多,那就得重新加载一下。还有一点,就是显示的很多文件系统,并不就是真的文件系统,可能是虚拟的...
2019-01-06 19:47:17 9450 1
原创 linux-手动分区
上次分区失败,重新安装了一下,预留了空间,重新来一遍磁盘信息交互界面创建扩展分区创建扩展分区的话一般会使用全部的剩余磁盘空间。后续所谓创建的逻辑分区都是在这上面进行划分。信息显示创建逻辑分区关于l逻辑分区是扩展分区下创建的类型。柱面位置范围或者大小之前说过了,这里不赘述了。分区写入q和w之间的相关问题也说过了。t和l看需要什么类型的分区,这里我采用...
2019-01-06 17:12:45 4863 2
原创 linux-块结构
遗漏之前大体说过了。文件和具体硬件存储是根据inode进行关联的。不论直接或者是间接,大致都可归纳为filenameinodefileEntity遗漏1: 我们所谓的数据实体对应硬盘啥位置,怎么找到同时,我们也提到过逻辑分块的概念,不过对于其中的大小和管理没有太深入的说明。但是,我们明确的知道,它和扇区相关,那么,它和inode是什么关系。遗漏二:块和inode的关系。融合...
2019-01-05 21:31:17 1572
原创 linux-磁盘分区
设备文件Linux的一切皆文件,想必都不陌生。无论是硬件设备,或者是管道之类的,都是文件。ls -l中我们也能看到很多的文件类型。markdescription-普通文件d目录l链接文件b块设备c字符设备p管道文件ssocket前面三个呢,我们已经大致有了了解,现在我们先来了解一下设备文件。分类设备...
2019-01-04 05:23:21 360
原创 linux-磁盘结构
磁盘结构知道结构有用么,应该是不知道怎么用吧,那就先好好积累一下呗磁头回想一下磁带吧,顺便申明一下,这是磁性的。或许称作磁针就更容易理解了,就是往盘上烙印磁性的。然后利用电磁效应进行数据的存储和读取。磁盘嗯,这个是废话;上面的盘就是磁盘。不过一般整体就叫做磁盘,单个盘的话就叫做盘面了。如你所见,是圆的。结合磁带的认知,加上平时听到的动静,我们可以断定,它是会旋转的。虽然是...
2019-01-01 16:20:18 786
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人