使用 xshell 登录 Windows 的 linux 子系统

2020-06-09
阅读 2 分钟
2.2k
1 配置 SSH Server {代码...} 2 使用 xshell 登录 连接配置 设置用户名和密码 3 Windows 配置开机自启动 3.1 windows 计划任务配置 可以使用windows自带的定时任务计划上添加开机启动Ubuntu ssh服务的任务。搜索“任务计划程序”,操作-- 创建基本任务: 触发器:当计算机启动时 操作:启动程序 程序名:bash.exe(默认打...

Nginx 实用配置

2019-09-04
阅读 3 分钟
2.8k
1 防盗链 相关配置: valid_referers {代码...} 2 根据文件类型设置过期时间 {代码...} 3 禁止访问某个目录 {代码...} 4 静态资源访问 {代码...} 5 日志配置 5.1 日志字段说明 字段 说明 remote_addr 和 http_x_forwarded_for 客户端 IP 地址 remote_user 客户端用户名称 request 请求的 URI 和 HTTP 协议 status 请求状...

跟着大彬读源码 - Redis 10 - 对象编码之整数集合

2019-08-12
阅读 4 分钟
1.6k
整数集合是 Redis 集合键的底层实现之一。当一个集合只包含整数值元素,并且元素数量不多时,Redis 就会使用整数集合作为集合键的底层实现。

跟着大彬读源码 - Redis 9 - 对象编码之 三种list

2019-08-07
阅读 7 分钟
2.5k
Redis 底层使用了 ziplist、skiplist 和 quicklist 三种 list 结构来实现相关对象。顾名思义,ziplist 更节省空间、skiplist 则注重查找效率,quicklist 则对空间和时间进行折中。

跟着大彬读源码 - Redis 8 - 对象编码之字典

2019-08-05
阅读 7 分钟
1.8k
除了用来表示数据库之外,字典还是哈希键的底层实现之一。当一个哈希键包含的键值对比较多,又或者键值对中的元素都是比较长的字符串时,Redis 就会适应字典作为哈希键的底层实现。

跟着大彬读源码 - Redis 7 - 对象编码之简单动态字符串

2019-07-29
阅读 6 分钟
1.3k
Redis 没有直接使用 C 语言传统的字符串表示(以空字符串结尾的字符数组),而是构建了一种名为简单动态字符串(simple dynamic string)的抽象类型,并将 SDS 用作 Redis 的默认字符串表示。

跟着大彬读源码 - Redis 6 - 对象和数据类型(下)

2019-07-24
阅读 6 分钟
2.1k
ziplist 编码的哈希对象使用压缩列表作为底层实现。每当有新的键值对要加入到哈希对象时,程序会先将保存了键的压缩列表节点推入到表尾,然后再将保存了值的压缩列表节点推入到表尾。因此:

跟着大彬读源码 - Redis 5 - 对象和数据类型(上)

2019-07-22
阅读 6 分钟
2k
相信很多人应该都知道 Redis 有五种数据类型:字符串、列表、哈希、集合和有序集合。但这五种数据类型是什么含义?Redis 的数据又是怎样存储的?今天我们一起来认识下 Redis 这五种数据结构的含义及其底层实现。

跟着大彬读源码 - Redis 4 - 服务器的事件驱动有什么含义?

2019-07-17
阅读 11 分钟
1.7k
众所周知,Redis 服务器是一个事件驱动程序。那么事件驱动对于 Redis 而言有什么含义?源码中又是如何实现事件驱动的呢?今天,我们一起来认识下 Redis 服务器的事件驱动。

跟着大彬读源码 - Redis 3 - 服务器如何响应客户端请求?(下)

2019-07-15
阅读 5 分钟
2.4k
继续我们上一节的讨论。服务器启动了,客户端也发送命令了。接下来,就要到服务器“表演”的时刻了。 1 服务器处理 服务器读取到命令请求后,会进行一系列的处理。 1.1 读取命令请求 当客户端与服务器之间的套接字因客户端的写入变得可读时,服务器将调用命令请求处理器执行以下操作: 读取套接字中的命令请求,并将其保存...

跟着大彬读源码 - Redis 2 - 服务器如何响应客户端请求?(上)

2019-07-10
阅读 3 分钟
2k
上次我们通过问题“启动服务器,程序都干了什么?”,跟着源码,深入了解了 Redis 服务器的启动过程。 既然启动了 Redis 服务器,那我们就要连上 Redis 服务干些事情。这里我们可以通过 redis-cli 测试。 现在客户端和服务器都准备好了,那么Redis 客户端和服务器如何建立连接?服务器又是如何响应客户端的请求呢? 1 连接...

跟着大彬读源码 - Redis 1 - 启动服务,程序都干了什么?

2019-07-08
阅读 5 分钟
2.8k
但正所谓,种一棵树的最好时间是十年前,其次就是现在。如果你真的想了解 Redis 源码,又有缘看到了这系列博文,何不跟着博主一起解读 Redis 源码,做个同行人呢?接下来,就让我们一起走入 Redis 的源码世界吧。

MySQL - 高可用性:少宕机即高可用?

2019-04-29
阅读 4 分钟
3.7k
我们常见的可用性通常以百分比表示,这本身就有其隐藏的意味:高可用性不是绝对的。换句话说,100% 的可用性是不可能达到的。没错,这里可以这么肯定的说。

MySQL - 扩展性 3 负载均衡:眼花缭乱迷人眼

2019-04-24
阅读 4 分钟
2.9k
基于这个思路,我们通常的做法是在服务器前端设置一个负载均衡器。负载均衡器的作用是将请求的连接路由到最空闲的可用服务器上。如图 1,显示了一个大型网站负载均衡设置。其中一个负责 HTTP 流量,另一个用于 MySQL 访问。

MySQL - 扩展性 2 扩展策略:氪金氪脑任君选

2019-04-22
阅读 3 分钟
1.7k
如果将应用的所有数据简单地放在一台 MySQL 服务器实例上,就不用谈什么扩展性了。但是业务能稳定持续的增长,那么应用肯定会碰到性能瓶颈。 对于很多类型的应用而言,购买更高性能的机器能解决一大部分性能问题,这也是我们常说的 “垂直扩展” 或者 “向上扩展”。 另一个与之相反的方法是将任务分配的多台机器上,这通常...

MySQL - 扩展性 1 概述:人多未必力量大

2019-04-17
阅读 4 分钟
2.3k
我们应该接触过或者听说过数据库的性能瓶颈问题。对于一个单机应用而言,提升数据库性能的最快路径就是氪金 - 买更高性能的数据库服务器,只要钱到位,性能不是问题。

MySQL 复制 - 性能与扩展性的基石 4:主备切换

2019-04-15
阅读 3 分钟
1.8k
一旦使用 MySQL 的复制功能,就很大可能会碰到主备切换的情况。也许是为了迭代升级服务器,或者是主库出现问题时,将一台备库转换成主库,或者只是希望重新分配容量。不过出于什么原因,都需要将新主库的信息告诉其它备库。

MySQL 复制 - 性能与扩展性的基石 3:常见问题及解决方案

2019-04-08
阅读 4 分钟
2.3k
问题未发生,避免方案:设置主库的 sync_binlog 选项为 1。此选项表示 MySQL 是否控制 binlog 的刷新。当设置为 1 时,表示每次事务提交,MySQL 都会把 binlog 刷下去,是最安全,性能损耗也最大的设置。问题已发生,解决方案:指定备库从下一个二进制日志的开头重新读日志。但是一些日志事件将永久性丢失。可以使用 Per...

MySQL 复制 - 性能与扩展性的基石 2:部署及其配置

2019-04-03
阅读 6 分钟
1.8k
正所谓理论造航母,现实小帆船。单有理论,不动手实践,学到的知识犹如空中楼阁。接下来,我们一起来看下如何一步步进行 MySQL Replication 的配置。

MySQL 复制 - 性能与扩展性的基石 1:概述及其原理

2019-04-01
阅读 4 分钟
1.8k
MySQL 内置的复制功能是构建基于 MySQL 的大规模、高性能应用的基础,复制解决的基本问题是让一台服务器的数据与其他服务器保持同步。接下来,我们将从复制概述及原理、复制的配置、常见的问题及解决方法来学习 MySQL 的复制功能。

网络协议 终章 - GTP 协议:复杂的移动网络

2019-01-21
阅读 7 分钟
5.1k
    你一定知道手机上网有 2G、3G、4G 的说法,究竟这都是什么意思呢?有一个通俗的说法就是:用 2G 看 txt,用 3G 看 jpg,用 4G 看 avi。

网络协议 22 - RPC 协议(下)- 二进制类 RPC 协议

2019-01-16
阅读 5 分钟
2k
    在讲 CDN 和 DNS 的时候,我们讲过接入层的设计,对于静态资源或者动态资源静态化的部分都可以做缓存。但是对于下单、支付等交易场景,还是需要调用 API。

网络协议 21 - RPC 协议(中)- 基于 JSON 的 RESTful 接口协议

2019-01-14
阅读 4 分钟
2.1k
    对于 SOAP 来讲,比如我创建一个订单,用 POST,在 XML 里面写明动作是 CreateOrder;删除一个订单,还是用 POST,在 XML 里面写明了动作是 DeleteOrder。其实创建订单完全可以使用 POST 动作,然后在 XML 里面放一个订单的信息就可以了,而删除用 DELETE 动作,然后在 XML 里面放一个订单的 ID 就可以了。

网络协议 20 - RPC 协议(上)- 基于XML的SOAP协议

2019-01-09
阅读 5 分钟
2.4k
【前五篇】系列文章传送门: 网络协议 15 - P2P 协议:小种子大学问 网络协议 16 - DNS 协议:网络世界的地址簿 网络协议 17 - HTTPDNS:私人定制的 DNS 服务 网络协议 18 - CDN:家门口的小卖铺 网络协议 19 - RPC 协议综述:远在天边,近在眼前     上一节我们了解 RPC 的经典模型和设计要点,并用最早期的 ONC RPC 为...

网络协议 19 - RPC 协议:远在天边近在眼前

2019-01-07
阅读 5 分钟
2.6k
【前五篇】系列文章传送门: 网络协议 14 - 流媒体协议:要说爱你不容易 网络协议 15 - P2P 协议:小种子大学问 网络协议 16 - DNS 协议:网络世界的地址簿 网络协议 17 - HTTPDNS:私人定制的 DNS 服务 网络协议 18 - CDN:家门口的小卖铺     这几年微服务很火,想必各位博友或多或少的都接触过。微服务概念中,各服务...

网络协议 18 - CDN:家门口的小卖铺

2019-01-02
阅读 4 分钟
2.5k
【前五篇】系列文章传送门: 网络协议 13 - HTTPS 协议:加密路上无尽头 网络协议 14 - 流媒体协议:要说爱你不容易 网络协议 15 - P2P 协议:小种子大学问 网络协议 16 - DNS 协议:网络世界的地址簿 网络协议 17 - HTTPDNS:私人定制的 DNS 服务     到现在为止,我们基本上已经了解了网络协议中的大部分常用协议,对...

网络协议 17 - HTTPDNS:私人定制的 DNS 服务

2018-12-31
阅读 5 分钟
5.8k
【前五篇】系列文章传送门: 网络协议 12 - HTTP 协议:常用而不简单 网络协议 13 - HTTPS 协议:加密路上无尽头 网络协议 14 - 流媒体协议:要说爱你不容易 网络协议 15 - P2P 协议:小种子大学问 网络协议 16 - DNS 协议:网络世界的地址簿     全球统一的 DNS 是很权威,但是我们都知道“适合自己的,才是最好的”。很...

网络协议 16 - DNS 协议:网络世界的地址簿

2018-12-26
阅读 4 分钟
2.8k
    为什么在地址栏输入域名,就能直接访问到对应服务器?全局负载均衡和内部负载均衡又是什么?这些都和 DNS 解析息息相关,让我们一起来解密 DNS 解析。

网络协议 15 - P2P 协议:小种子大学问

2018-12-24
阅读 7 分钟
6k
【前五篇】系列文章传送门: 网络协议 10 - Socket 编程(上):实践是检验真理的唯一标准 网络协议 11 - Socket 编程(下):眼见为实耳听为虚 网络协议 12 - HTTP 协议:常用而不简单 网络协议 13 - HTTPS 协议:加密路上无尽头 网络协议 14 - 流媒体协议:要说爱你不容易     “兄弟,有种子吗?”    “什么种子?小麦...

网络协议 14 - 流媒体协议:要说爱你不容易

2018-12-19
阅读 6 分钟
4.6k
【前五篇】系列文章传送门: 网络协议 9 - TCP协议(下):聪明反被聪明误 网络协议 10 - Socket 编程(上):实践是检验真理的唯一标准 网络协议 11 - Socket 编程(下):眼见为实耳听为虚 网络协议 12 - HTTP 协议:常用而不简单 网络协议 13 - HTTPS 协议:加密路上无尽头     大家都会关注“在浏览器输入一个地址,...