![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件介绍
文章平均质量分 83
wilson_go
这个作者很懒,什么都没留下…
展开
-
系统架构的思考
看到了很多公司系统架构,也看到了很多问题,在跟这些公司进行交流和讨论的时候,包括进行实施和方案比较的时候,都有很多各种方案的比较和妥协,因为相关的经历越来越多,所以,逐渐形成了自己的逻辑和方法论。今天,想写下这篇文章,把我的这些个人的经验和想法总结下来,希望能够让更多的人可以参考和借鉴,并能够做出更好的架构来。另外,我的这些思维方式和原则都针对于现有市面上众多不合理的架构和方案,所以,也算是一种“纠正”……(注意,这篇文章所说的这些架构上的原则,一般适用于相对比较复杂的业务,如果只是一些简单和访问量不大的应原创 2021-12-22 12:37:39 · 455 阅读 · 0 评论 -
redis唯快不破
作为一名服务端工程师,工作中你肯定和 Redis 打过交道。Redis为什么快,这点想必你也知道,至少为了面试也做过准备。很多人知道Redis快仅仅因为它是基于内存实现的,对于其它原因倒是模棱两可。基于内存实现这点在一开始就提到过了,这里再简单说说。Redis 是基于内存的数据库,那不可避免的就要与磁盘数据库做对比。对于磁盘数据库来说,是需要将数据读取到内存里的,这个过程会受到磁盘 I/O 的限制。而对于内存数据库来说,本身数据就存在于内存里,也就没有了这方面的开销。高效的数据结构Redis原创 2021-10-25 19:17:55 · 142 阅读 · 0 评论 -
快速查找
GoLangprotobuf文件 https://blog.csdn.net/qq_30505673/article/details/84865090原创 2019-05-21 17:06:51 · 218 阅读 · 0 评论 -
ubuntu查看命令
查看端口是否被占用:netstat -apn | grep 80查看占用某个端口的进程:sudo lsof -i:80关键字搜索某个进程ps -aux | grep fdfs原创 2019-05-21 20:03:55 · 306 阅读 · 0 评论 -
Dockerfile
Dockerfile注意事项:文件名首字母大写存储Dockerfile的目录, 尽量是空目录制作的镜像功能尽量单一制作步骤要尽可能精简mkdir /home/go/hellomkdir /home/go/worldmkdir /home/go/hello /home/go/world1.1 Dockerfile的构成dockerfile中的注释使用: ...原创 2019-05-21 20:13:48 · 190 阅读 · 0 评论 -
Linux解决SSH会话连接超时问题
用SSH客户端连接linux服务器时,经常会出现与服务器会话连接中断现象,造成这个问题的原因便是SSH服务有自己独特的会话连接机制。解决方案:1、设置服务器向SSH客户端连接会话发送频率和时间#vi /etc/ssh/sshd_config,添加如下两行ClientAliveInterval 60ClientAliveCountMax 86400注:ClientAliveInterva...原创 2019-05-22 19:30:12 · 4004 阅读 · 0 评论 -
Lua
Lua 特性轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。其它特性:支持面向过程(procedure-oriented)编程和函数式编程(functional programming);自动内存管...原创 2019-05-27 20:57:54 · 202 阅读 · 0 评论 -
ImportError: pycurl: libcurl link-time ssl backend (nss) is different from compile-time ssl backend
pip uninstall pycurlexport PYCURL_SSL_LIBRARY=nsseasy_install pycurl使用上面三行命令就解决了!原创 2019-05-31 11:36:02 · 1392 阅读 · 0 评论 -
Go实战--golang实现静态文件服务器(文件查看,文件上传,文件下载)
package net/http几个方法: http.FileServer FileServer returns a handler that serves HTTP requests with the contents of the file system rooted at root.func StripPrefix(prefix string, h Handler) Handler...转载 2019-05-31 14:58:34 · 5260 阅读 · 0 评论 -
HTTP协议之multipart/form-data请求分析
1、form-data: 就是http请求中的multipart/form-data,它会将表单的数据处理为一条消息,以标签为单元,用...转载 2019-05-31 19:44:46 · 402 阅读 · 0 评论 -
seaweedfs文件存储服务器在Linux搭建
安装seaweedfs下载seaweedfs,地址,wget https://github.com/chrislusf/seaweedfs/releases/download/0.76/linux_amd64.tar.gz解压到/usr/local:sudo tar -zxvf linux_amd64.tar.gz -C /usr/local进入到解压目录,新建data目录,data下再新建...原创 2019-06-18 20:41:30 · 1071 阅读 · 0 评论 -
Kubernetes(K8s)
Kubernetes(K8s)是Google在2014年发布的一个开源项目。据说Google的数据中心里运行着20多亿个容器,而且Google十年多前就开始使用容器技术。最初,Google开发了一个叫Borg的系统(现在命名为Omega)来调度如此庞大数量的容器和工作负载。在积累了这么多年的经验后,Google决定重写这个容器管理系统,并将其贡献到开源社区,让全世界都能受益。这个项目就是Kube...原创 2019-01-28 00:15:55 · 524 阅读 · 0 评论 -
Docker入门介绍
Docker特点 (1)上手快。 用户只需要几分钟,就可以把自己的程序“Docker化”。Docker依赖于“写时复制”(copy-on-write)模型,使修改应用程序也非常迅速,可以说达到“随心所致,代码即改”的境界。 随后,就可以创建容器来运行应用程序了。大多数Docker容器只需要不到1秒中即可启动。由于去除了管理程序的开销,Docker容器拥有很高的性能,同时同一台宿主机中...原创 2018-09-08 00:26:03 · 679 阅读 · 0 评论 -
MySQL8允许远程连接
一、设置MySQL服务允许外网访问 修改mysql的配置文件,有的是my.ini(windows),有的是my.cnf(linux), 在配置文件中增加 [mysqld] port=3306 bind-address=0.0.0.0 然后重新启动mysql服务,执行service mysql restart。 二、设置mysql用户支持外网访问 需要使用root权限登录mysql,...原创 2018-09-11 11:38:26 · 17662 阅读 · 4 评论 -
MySQL简单命令入门
DDL(data definition language)数据库定义语言CREATE、ALTER、DROP、SHOWDML(data manipulation language)数据操纵语言SELECT、UPDATE、INSERT、DELETEDCL(Data Control Language)数据库控制语言,是用来设置或更改数据库用户或角色权限的语句创建表 create table...原创 2018-09-11 19:08:23 · 770 阅读 · 0 评论 -
go语言连接MySQL中unknown driver "mysql" (forgotten import?)
import( “database/sql” // 引入数据库驱动注册及初始化 _ “github.com/go-sql-driver/mysql” )添加_ “github.com/go-sql-driver/mysql”这一行就可以了原创 2018-09-16 19:39:44 · 17221 阅读 · 4 评论 -
最快的分布式关系型数据库MEMSQL
MemSQL 具有以下特点1 高效的并行,尤其是分布式的MemSQL.2 高效的并发,采用lock-free的内存数据结构skip list 和hash.支持MVCC.3 查询执行计划编译成C++的形式,可以高效执行并且可以重用4 支持数据的冗余存储,提高可用性5 支持重放事物日志的复制6 支持JSON格式的数据处理它是由Eric Frenkiel(前Facebook员...原创 2018-09-17 11:56:04 · 2580 阅读 · 0 评论 -
redis 的sorted set 用法与golang操作redis中zadd
redis 的sorted set 用法原创 2018-10-13 10:06:16 · 3776 阅读 · 0 评论 -
golang操作redis数据库
package mainimport ( "github.com/gomodule/redigo/redis")func main(){ conn,_ := redis.Dial("tcp", ":6379") defer conn.Close() conn.Do("set", "c1", "hello")}连接数据库Dial(n原创 2018-10-13 10:09:48 · 1581 阅读 · 0 评论 -
谷歌浏览器安装
首先从其他浏览器从搜索谷歌浏览器的官网,进去后点击下载,执行如下命令:sudo dpkg -i google-chrome-stable_current_amd64.deb原创 2018-12-04 21:58:44 · 509 阅读 · 0 评论 -
Haystack 图片存储
图片存储系统的最大特点是数据只写一次,读取频繁,不会修改,很少删除。Facebook 一开始的存储系统是基于NFS的NAS(Network Attached Storage), 但这种基于 POSIX 的文件系统无法支撑如此大的负载。其中主要的问题在于在图片寻址的过程中会产生过多的磁盘操作。传统的 POSIX 文件系统不适合高性能的图片存储, 主要原因是基于该文件系统来存储的话,是讲每个图片存储...原创 2019-01-24 19:50:54 · 377 阅读 · 0 评论 -
百万级消息服务MQTT
EMQ官方地址:http://emqtt.com/EMQ中文文档:http://emqtt.com/docs/v2/guide.htmlEMQ (Erlang/Enterprise/Elastic MQTT Broker) 是基于 Erlang/OTP 平台开发的开源物联网 MQTT 消息服务器。Erlang/OTP 是出色的软实时(Soft-Realtime)、低延时(Low-Latency...原创 2019-01-21 18:38:11 · 1514 阅读 · 0 评论 -
fastdfs简介
FastDFS是一个开源的轻量级分布式文件系统,由跟踪服务器(tracker server)、存储服务器(storage server)和客户端(client)三个部分组成,主要解决了海量数据存储问题,特别适合以中小文件。 Tracker是FastDFS的协调者,负责管理所有的storage server和group,每个storage在启动后会连接Tracker,告知自己所属的group等信息...原创 2018-09-04 20:01:24 · 518 阅读 · 0 评论