sorra

105
获赞数
6
关注数
78
粉丝数
IP 属地上海
2014-06-29 加入
浏览 15.3k
╭╮╱╭┳━━━┳╮╱╭╮
┃┃╱┃┃╭━╮┃┃╱┃┃
┃╰━╯┃┃┃┃┃╰━╯┃
╰━━╮┃┃┃┃┣━━╮┃
╱╱╱┃┃╰━╯┃╱╱┃┃
个人简介什么都没有
841 声望|达人
全站排名超越 98% 用户
java
643
架构
119
缓存
86
spring
83
ast
81
个人动态
  • 发布了文章2024-03-11
    Orca ORM的开发状态和技术路线
    近期主要在编写框架的核心逻辑,已支持H2和MySQL数据库,这两天成功把它在Spring Boot应用程序中运行起来了。最主要的技术挑战,即“循环关联的JOIN”,已得到解决。解决这一挑战所花的时间比预期多很多(重做了N次),因此整个项目进度都延后,但是以后都是坦途了。现...
  • 发布了文章2024-02-29
    企业应用平台的六大引擎
    由于技术的进步,现代企业应用无需从头开始开发,而可以利用企业应用平台,通过组件化、低代码乃至无代码的方式来构建,以获得更高的质量、性能和交付速度。本文提出企业应用平台的一种以元数据为中心的、基于六大引擎的架构。平台以元数据和业务领域为中心,六大引...
  • 发布了文章2024-01-01
    给程序员的新年礼物
    2024年来临之际,给大家带来一款新型的Java ORM框架(按现有设计,有望支持其他语言)作为新年礼物,名叫Orca。还在开发中,之后继续更新开发进度。
  • 赞了文章2023-11-18
    原生“跨组件”通信方式
    相信大家平时在vue或者react中都碰到过“跨组件”通信的需求,通常我们需要将数据放在一个公共的父级上,然后用context之类的方式传递下去,或者借用pinia这样的开源库去更好的管理这些数据。
  • 发布了文章2023-09-05
    背压的本质
    我们搞技术要培养见微知著的能力,用逻辑分析和构造来代替经验主义。例如“背压”(back-pressure)的话题就可以从很简单的模型出发,通过一步步的推导来完善解决方案。
  • 发布了文章2023-08-31
    数据流水线的成本自适应算子
    如今我们构建很多的数据流水线(data pipeline)来把数据从一处移动到另一处,并且可以在其中做一些转换处理。数据的移动是有成本的,对此成本的优化可以为数据流水线的拥有者带来成本效益。
  • 发布了文章2023-08-20
    动手写Amazon SQS客户端
    Amazon SQS是AWS上主流的消息队列服务,按理说它是有SDK的,那么为什么还要自己编写客户端呢?因为它提供的SDK太简单,就几个Web API,没有办法直接用。我们具体来说一说。
  • 发布了文章2022-07-31
    索引选择度:高性能SQL的关键
    一般普遍认为索引能提高SQL性能,但这并不总是成立, 因为只有高效的索引才能真正提高SQL性能。事实上,过多的索引甚至会减慢写操作的速度。我们之前的文章讨论了一个低效的索引是如何拖慢系统性能的,但那里的示例是不常用的GIN索引。这一次,我们介绍的示例是低效...
  • 发布了文章2022-06-03
    少即是多:从分钟级提升到毫秒级的PostgreSQL查询
    使用更多的索引并不一定能提升数据库性能。“少即是多”的原则也适用于数据库领域。本文将介绍我们通过少用索引使一个PostgreSQL查询提速几千倍,从分钟级提升到毫秒级的经验。
  • 发布了文章2022-06-01
    递归、迭代和动态规划:以九宫格键盘为例
    给定一个从数字到字母的映射表:1 => [a, b, c], 2 => [d, e, f], 3=> [g, h, i], ......,实现一个函数List<String> calculate(String input),若用户输入任意的数字串,要依据映射表转换每一个数字,返回所有可能的转换结果。例如,若输入“12”会得...
  • 发布了文章2021-08-08
    生产就绪的算法:以随机句子为例
    题意为:输入一个句子(即一个单词序列)和一个预期长度,需从输入句子随机抽取单词组成一个新句子(只是一个单词序列,不考虑语法),新句子的单词数量等于预期长度。随机抽取的具体规则为:随机取一个单词作为首个单词加入新句子,每当新句子加入一个单词,对于这...
  • 发布了文章2021-07-12
    数据库主键适合用UUID吗?
    为什么想到用UUID做数据库主键呢?考虑如此场景,有多个生产环境各自运行,有时要从一个环境导数据到另一个环境,因此要求主键不冲突,自增整数不能满足要求。搞个中央发号器服务如何?很多互联网公司都这么做了。但对于以上场景,那就需要各个生产环境依赖同一个发...
  • 发布了文章2020-12-31
    我的2019与2020
    我自己也没空做AI,这一年主要在做权限管理系统,这系统可复杂了,基于规则的、行列级粒度的权限控制,提供多种多样的API给业务团队,任务多,难度大,发动大伙一起做才做完。
  • 发布了文章2020-12-19
    CDI和Spring的主要差异
    继上一篇文章《Java元注解meta-annotation与依赖注入》,我又探索了两大依赖注入技术体系CDI和Spring的关系。Spring实现了CDI规范吗?相信大家也会有这种问题。
  • 发布了文章2020-12-19
    Java元注解meta-annotation与依赖注入
    注意到Java的依赖注入DI规范(起初以为是CDI规范,然后发现是DI规范)有个叫@Qualifier的注解,用于当一个interface或base class有多个实现类时,能选择其中一个实现。如不用这一注解,一般的(按类型)注入就会报错说“不知道要在多个实现中选哪一个”。这一注解可以...
  • 发布了文章2019-08-24
    代码要不要写注释?
    当注释内容与代码的实际作用不一致时,注释就是错误的:// copy node to new positionmoveNode(node, position);
  • 发布了文章2019-03-18
    论文解读:Design patterns for container-based distributed systems
    论文认为,继OOP(面向对象编程)所引领的软件开发革命之后,如今似乎在分布式系统开发中也发生着一场相似的革命:基于容器化组件构建的微服务架构。
  • 发布了文章2019-02-28
    MapReduce精髓
    map: 把输入数据集切分成很多份(1份可包含很多records),传给map函数做转换处理(每次处理1条record,得出1条结果),结果集被输出到文件
  • 发布了文章2019-02-21
    我的2017与2018
    写了这些博客:Kotlin框架巡礼轻境界的可用性与性能优化记缓存穿透、雪崩、热点与Redis解读 Kotlin/Native 技术预览版解决Gradle传递性依赖冲突关于Kotlin语法的异议JVM JIT编译能改变某些反射的执行结果
  • 发布了文章2019-01-15
    谈一谈自动编程
    在自动产生程序之前,先要知道需求是什么吧?要能把需求准确地描述给机器,这就需要一种需求描述语言。假如我们制造了这种需求描述语言,它进一步发展,越发规范,成为了一种DSL(领域特定语言)。嗯,这就变成了DSL编程。