捉虫大师 捉虫大师
4年前
redis在微服务领域的贡献
本文已收录https://github.com/lkxiaolou/lkxiaolou欢迎star。前言说到redis,可能大家的脑海中蹦出的关键词是:NoSQL、KV、高性能、缓存等。但今天的文章从另一个角度——微服务来展开。这篇文章的起因也是源自一次面试经历,在面试一位来自陌陌的候选人(就是那个交友的陌陌)时,他提到一点让我觉得很有意思,他说red
Stella981 Stella981
4年前
Netty如何实现同一个端口接收TCP和HTTP请求
前言在java的网络编程世界里,Netty的地位可谓是举足轻重,说到基于NIO的网络编程,Netty几乎成为企业的首选,本文不会过多介绍Netty的基本使用等知识,本文着重介绍在Netty中如何实现同一个端口,既能接收TCP请求,也能接收Http请求。由于一些特殊的原因,我要实现一款消息中间件,暂时称为“企业消息总线”吧。简单描述一下场景,对如
Stella981 Stella981
4年前
JavaScript 的面向切面编程
我们都知道面向对象编程,或者至少听说过JavaScript领域的函数式编程,但是,你听说过面向切面编程吗?我知道,它听起来像是《魔法战队》中某一集出现的东西。然而,AOP是实际存在的。此外,虽然我们现在没有使用它,但它却可以被应用于我们日常会见到的一些用例中。它最大的优势在于,你可以毫不费力的将AOP与FP或OOP结合使用,就像J
Stella981 Stella981
4年前
Kafka 和 RocketMQ 之性能对比
在双十一过程中投入同样的硬件资源,Kafka搭建的日志集群单个Topic可以达到几百万的TPS,而使用RocketMQ组件的核心业务集群,集群TPS只能达到几十万TPS,这样的现象激发了我对两者性能方面的思考。温馨提示:TPS只是众多性能指标中的一个,我们在做技术选型方面要从多方面考虑,本文并不打算就消息中间件选型方面投入太多笔墨,重点想尝试剖析两
Stella981 Stella981
4年前
Go实现FastCgi Proxy Client 系列(三)优化篇
墨迹一点个人琐碎最近比较忙,以致于很久都没有写blog了,但是,golang的水平自认为是总算入门了。协程的个人理解网上的说法一般都是协程是轻量级线程。我个人认为协程的好处1.小2.无需在用户态和内核态切换(完全在用户态)3.无需线程上下文切换的开销(因为之上的好处)4.编码简单(原
Wesley13 Wesley13
4年前
Java并发系列 1
程序开发中并发的场景还是比较常见的,特别是当下分布式环环境开发大行其道的情况下,从前端处理,到服务调用、缓存处理、数据库处理、文件处理、消息处理等等,无不需要并发的知识。从今天开始,我要写一个关于Java并发的系列文章,希望各位可以从中受益。我们先从基础的线程开始说起!一、线程基础知识从宏观来看,简单说一下进程:所谓进程
Wesley13 Wesley13
4年前
CSS清除浮动的4种方式
1、使用空标签清除浮动。我用了很久的一种方法,空标签可以是div标签,也可以是P标签。这种方式是在需要清除浮动的父级元素内部的所有浮动元素后添加这样一个标签清除浮动,并为其定义CSS代码:clear:both。此方法的弊端在于增加了无意义的结构元素。2、使用overflow属性。此方法有效地解决了通过空标签元素清除浮动而不得不增加无意代码的弊端。使用
Wesley13 Wesley13
4年前
EOS开发基础之一:源代码下载与开发环境搭建
区块链最近挺火的,我又是个非常缺钱的人,所以紧跟了潮流一头扎进区块链的研究中。这EOS项目是目前比较火的一个项目,相信很多朋友拿到这份EOS的源代码后都会一脸懵逼,因为……这代码写得太高级了,老纸看不懂(各种宏各种模板元编程各种智能指针和所谓的石墨烯技术……在哪里?)目前EOS项目是只能运行在Linux和Mac操作系统上的,要想在Windows上运行