2019-10-21 16:31
Redis作为一款性能优异的内存数据库,支撑着微博亿级社交平台,也成为很多互联网公司的标配。这里将以Redis Cluster集群为核心,基于最新的Redis5版本,从原理再到实战,玩转Redis集群
常见Redis集群方案
在介绍Redis Cluster集群方案之前,为了方便对比,先简单了解一下业界常见的Redis集群方案:
1 基于客户端分片
Redis Sharding是Redis Cluster出来之前,业界普遍使用的多Redis实例集群方法。其主要思想是基于哈希算法,根据Redis数据的key的哈希值对数据进行分片,将数据映射到各自节点上
...
2019-10-21 16:14
阅读目录
前言
Socket模拟浏览器的Url Get请求
用Socket实现Web服务器
为什么不见三次握手
结束
续上篇《你也可以写个聊天程序 - C# Socket学习1》
前言
这里说的服务器是Web服务器,是类似IIS、Tomcat之类的,用来响应浏览器请求的服务。
Socket模拟浏览器的Url Get请求
首先浏览器的请求是HTTP协议。我们上一篇说过,HTTP是短连接,用完就断开,是无状态的。所以我们在等待响应的时候不需要另外开个线程循环等待。
也就是我们只需要通过Socket和服务器建立连接,然后发送请求,然后接收服务器的响应,这样就完成了一次请求。
...
2019-10-21 15:44
写在前面
马上就2020年了,不知道小伙伴们今年学习了css3动画了吗?
说起来css动画是一个很尬的事,一方面因为公司用css动画比较少,另一方面大部分开发者习惯了用JavaScript来做动画,所以就导致了许多程序员比较排斥来学习css动画(至少我是),但是一个不懂css动画的前端工程师不能称之为掌握css3,其实当你真正学习css动画之后,你会被它的魅力所吸引的,它可以减少代码量、提高性能。
上一篇文章我们已经一起学习了transition 的使用,如果有不了解的同学可以查看我的上一篇文章。
...
2019-10-21 15:44
目录
前言
一.开门见山:Node和浏览器的异步执行顺序问题
二.两种环境下的宏任务和微任务阵营(macrotask && microtask)
三.Node和浏览器的事件循环模型在实现层面的区别
四.Node和浏览器的事件循环的任务队列
五.Node和浏览器的事件循环模型在表现层面的差异
六.理清libuv的“七队列”和Node“四个主队列”的关系
七.Node和浏览器环境下setTimeout的最小延迟时间
八.setTimeout(0 delay)和setImmediate的执行顺序详解
...
2019-10-21 15:11
RoadFlow工作流引擎从.NET Core2.2升级到3.0遇到了一些问题及解决方式这里记录一下。1、DLL项目框架从2.2选择到3.0,这个没什么好说的,没有问题。重点的WEB层的一些变化。...
2019-10-21 15:47
优秀的系统都是根据反馈逐渐完善出来的
上篇文章介绍了我们为了应对安全和多分支频繁测试的问题而开发了一套Alodi系统,Alodi可以通过一个按钮快速构建一套测试环境,生成一个临时访问地址,详细信息可以看这一篇文章:Alodi:为了保密我开发了一个系统
系统上线后,SSH登陆控制台成了一个迫切的需求,Kubernetes的Dashboard控制台虽然有WebSSH的功能,但却没办法跟Alodi系统相结合,决定在Alodi中集成WebSSH的功能,先来看看最后实现的效果吧
涉及技术
Kubernetes Stream:接收数据执行,提供实时返回数据流
...
2019-10-21 15:15
最近云界发生了2件事,一件是大事,一件是小事,大事是阿里云与微软合作推出了开放应用模型 Open Application Model(OAM),小事是由于微软 SQL Server 在阿里云上水土不服(仅是我们的猜测),阿里云 SQL Server RDS 患上了间隙性芯脏病,该病容易在夜间酣睡的时候发病,目前唯一的急救药是“主备切换”。...
2019-10-21 15:42
数据库查询相信很多人都不陌生,所有经常有人调侃程序员就是CRUD专员,这所谓的CRUD指的就是数据库的增删改查。
在数据库的增删改查操作中,使用最频繁的就是查询操作。而在所有查询操作中,统计数量操作更是经常被用到。
关于数据库中行数统计,无论是MySQL还是Oracle,都有一个函数可以使用,那就是COUNT。
但是,就是这个常用的COUNT函数,却暗藏着很多玄机,尤其是在面试的时候,一不小心就会被虐。不信的话请尝试回答下以下问题:
1、COUNT有几种用法?
2、COUNT(字段名)和COUNT(*)的查询结果有什么不同?
...
2019-10-21 15:13
在逛 Stack Overflow 的时候,发现最火的问题竟然是:什么是 NullPointerException(java.lang.NullPointerException),它是由什么原因导致的,有没有好的方法或者工具可以追踪它发生的原因?...
2019-10-21 15:39
需求说明
最近需要实现一个导出这种格式的Excel表单,之前都有用过导出Excel的功能,但大都是表头+数据的形式,只用于获取数据,没有太多样式要求,不用合并单元格、合并居中等,也不用对每一行数据特异化定制的,所以对PhpSpreadsheet扩展库进行进阶理解。
解决过程
从github->官方文档->api文档->CSDN文章(文末有链接),完了跟着操作都会一直报错,csdn的那篇文章中一旦调用了样式的方法后,返回对象就变成了样式相关的,不能继续指定工作单元了,所以仍然不是太实用,只能作为参考了。
...
2019-10-21 15:10
目录
正文
windows版
Linux版
总结
正文
不知道在大家面试中,有没有遇到这个问题:
生产服务器上部署了几个java程序,突然出现了CPU100%的异常告警,你如何定位出问题呢?
这个问题分为两版回答!
高调版
对不起,我是做研发的,这个问题在生产上是不可能遇见的!因为研发是不可能直接操作生产服务器,如果贵公司能出现这个问题,应该要反思一下自己的权限控制是否合理!
面试官心里活动:装13是不是,赶紧走!
低调版
这个问题我在生产上没碰到过,因为我们是没法直接操作生产环境的。只能说,在测试环境曾经遇见过。操作步骤如下,balabala…
...
2019-10-21 15:31
一、分库分表的背景在数据爆炸的年代,单表数据达到千万级别,甚至过亿的量,都是很常见的情景。这时候再对数据库进行操作就是非常吃力的事情了,select个半天都出不来数据,这时候业务已经难以维系。不得已,分库分表提上日程,我们的目的很简单,减小数据库的压力,缩短表的操作时间。...