Forrest Hu's Blogs

技术、架构与生活随笔 · 共 453 篇文章

  1. 数据库的一些知识

    数据库存储选型经验总结 未读数据库治理的云原生之道 —— Database Mesh 2.0数据的组织假定数据库存放数据的文件称为data file,数据库的内容在内存里是有缓存的,称为db buffer。某次操作,我们取了数据库某表格中的数据,这个数据会在内存中缓存一些时...

  2. 东白山小记

    东白山小记挨过了七八月份的酷热,终于迎来了秋天的第一个假期,和小伙伴们踏上了去东白山的征途,两日的行程虽不算长,一千多米的海拔更不算高,然而心中却收获了满满的充实。一路溯溪而上,我心中一直有个疑问:此处又不是青藏高原,有雪山融化的雪水,为何会有水从山上流下来?山脚下,半山腰...

  3. Spark 泛谈

    前言在 2012 年,UC 伯克利 AMP 实验室(Algorithms、Machine 和 People 的缩写)开发的 Spark 开始崭露头角。当时 AMP 实验室的马铁博士发现使用 MapReduce 进行机器学习计算的时候性能非常差,因为机器学习算法通常需要进行很...

  4. 当我在说模板引擎的时候,我在说什么

    (待整理)最近因为业务需要,简单了解下velocity,它是一种模板引擎。联系go语言中也有类似的组件,因此好好学习下。模板引擎分前端后端模板引擎的实现方式有很多,最简单的是“置换型”模板引擎,这类模板引擎只是将指定模板内容(字符串)中的特定标记(子字符串)替换一下便生成了...

  5. 用户认证问题

    安全性不是越高越好,而是够用就好。环境风险: 被偷窥的风险 被抓包的风险 被伪造的风险两个概念: Authentication,用户认证,就是让用户登录,并且在接下来的一段时间内让用户访问网站时可以使用其账户,而不需要再次登录的机制。 Authorization,...

  6. 链式处理的那些套路

    简介 用责任链模式来简化web开发逻辑 commons-chain 示例代码 ChainBase contextBase 其它 commons-pipeline(未完成) demo 代码 ...

  7. netty回顾

    前言 前言 netty做了什么工作 分层视角 channel pipeline 小结从操作系统层面分析Java IO演进之路 netty 和 kernel 交互图netty做了什么工作Java 的标准类库,由于其基础性、通用性的定位,往往过于关注技术模型上的抽象...

  8. 你或许应该学一门乐器,比如吉他

    你或许应该学一门乐器,比如吉他(未完待续)学吉他的起因很简单,某日在站台上等的实在烦躁,便坐上了一辆不常坐的公交车,虽也能到,但要多走几步路。下了车,不经意的一瞥,一个不太起眼的门面,加上搭错的一根筋,便鬼使神差的走了进去。现在想来,却分不清楚“念念不忘”和“兴之所至”,哪...

  9. Thrift基本原理与实践(二)

    重复下上节的thrift示例namespace java org.lqk.thriftservice RemotePingService{ void ping(1: i32 length)} RemotePingService.Iface void ping(i...

  10. Thrift基本原理与实践(一)

    server端接收数据:我们常听到osi七层模型,这张图表明thrift的实现也有着很清晰的分层接口 client : client –> protocol –> transport server : Transport –> protocol –&g...