Stephen.Ri Blog

You are waiting for a train, a train that will take you far away!

[Search]搜索引擎索引

这就是搜索引擎-搜索引擎索引总结

单词-文档矩阵是表达二者之间所具有的一种包含关系的概念模型。 索引基础 实验数据表明,倒排索引是单词到文档映射关系的最佳实现方式。 倒排索引基本概念 文档(Document):代表以文本形式存在的存储对象 文档集合(Document Collection):若干文档构成的集合 文档编号(Document ID):每个文档的内部编号,简称DocID 倒排索引(In...

[Java]设计模式

大话设计模式-常用设计模式总结

通过封装、继承、多态把程序的耦合度降低;通过设计模式使程序更加灵活,容易修改,易于复用。 六大设计原则 设计原则 WHAT WHY HOW 单一职责 就一个类而言,应该仅有一个引起它变化的原因 如果一个类承担的指责过多,就等于把这些指责耦合在一起,...

[Java]高效并发

  "深入理解Java虚拟机-线程安全与锁优化"

一致性 在多处理器系统中,每个处理器都有自己的高速缓存,而它们又共享同一主内存(Main Memory)。 为了解决一致性的问题,需要各个处理器访问缓存时都遵循一些协议,在读写时要根据协议来进行操作,这类协议有MSI、MESI(Illinois Protocol)、MOSI、Synapse、Firefly及Dragon Protocol等。 Java内存模型 作用是屏蔽各种硬件和...

[Java]虚拟机执行子系统

  "深入理解Java虚拟机-虚拟机执行子系统"

代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。 类文件结构 平台无关性 各种不同平台的虚拟机与所有平台都统一使用的程序存储格式——字节码(ByteCode)是构成平台无关性的基石。 Java虚拟机不和包括Java在内的任何语言绑定,它只与“Class文件”这种特定的二进制文件格式所关联,Class文件中包含了Java虚拟机指令集和符...

[Java]内存管理

  "深入理解Java虚拟机-自动内存管理机制"

Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人想出来。 GC 新生代GC(Minor GC):指发生在新生代的垃圾收集动作,因为Java对象大多具朝生夕灭的特性,所以Minor GC非常频繁,一般回收速度也比较快。 老年代GC(Major GC/Full GC):指发生在老年代的GC。通常会伴随至少一次Minor GC。 内...

[iRead]围城

  "城外的人想进去,城里的人想出来"

佳句 围在城里的人想逃出来,城外的人想冲进去。对婚姻也罢,职业也罢,人生的愿望大都如此。 今天的苦吃完了,明天的苦还远得很,这一夜的身心安适是向不属今明两天的中立时间的躲避。 旅行是最劳顿,最麻烦,叫人本相毕现的时候。经过长期苦旅行而彼此不讨厌的人,才可以结交作朋友。 一个人的缺点正像猴子的尾巴,猴子蹲在地面的时候,尾巴是看不见的。直到他向树上爬,就把后部供大众瞻仰,可是这红臀长尾巴...

[iRead]行星

  "BBC出版《行星》记录"

46亿年前,太阳的周围只有尘埃和气体。 经过上千万年后,这些尘埃开始慢慢结合聚集,形成最早的岩石。 最后,这些岩石在引力的作用下,创造出了行星的胚胎。 随后催生出了距离太阳最近的4颗行星。 水星 --> 金星 --> 地球 --> 火星 水星距离太阳5800万公里; 金星距离太阳1.08亿公里; 地球距离太阳1.5亿公里; 火星距离太阳2.28亿公里; 水星 水星运行...

[Git]Git使用方法

  "Git的一些使用方法记录"

配置SSH公钥 用下面的命令查看~/.ssh目录下有没有fileName.pub文件。 $ cd ~/.ssh $ ls 如果没有,则用下方命令生成: $ ssh-keygen 位置可以默认,密码可以留空。 配置用户名和邮箱 每次Git提交时都会引用我们的用户名和邮箱,说明是谁提交的更新。 $ git config --global user.name "Stephen" $ git ...

[Games]双人对战五子棋

  "使用netty-socket.io搭建五子棋服务器"

五子棋游戏链接 双人对战版 单人练习版 使用教程 两名对手在输入框中输入相同的房间号,点击连接房间按钮,即可进入房间。 先进入房间的人为黑棋,先手落子。 对局结束后可以点击重新开始按钮,进行下一次对局。 netty socket.io socket.io是一个面向实时web应用的JavaScript库,它使得服务器和客户端之间实时双向的通信成为可能。...

[VSCode]VSCode插件-SFTP

  "使用SFTP插件直接对远端文件进行修改"

SFTP插件有什么用 SFTP原意是Secure File Transfer Protocol(安全文件传输协议)。 而借助VSCode的SFTP插件,用户可以做到直接在VSCode上像操作本地文件一样对远端文件进行修改,而不再需要繁杂的上传,下载过程。美滋滋!! 安装SFTP插件 直接在VSCode插件库搜索并安装SFTP,认准作者liximomo。 配置SFTP插件 按下co...