数据结构(一)基本概念 发表于 2017-10-22 | 分类于 数据结构 是相互之间存在的一种或多种特定关系的数据元素的集合。 几个概念数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。(符号–可以输入计算机中并能被计算机程序处理) 数据元素组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录 ... 阅读全文 »
进程进阶 发表于 2017-10-04 | 分类于 Linux 文件锁进程锁记录一个PID文件,避免两个进程同时运行的文件锁。 进程锁的作用之一就是可以协调进程的运行,例如crontab使用进程锁解决冲突提到,使用crontab限定每一分钟执行一个任务,但这个进程运行时间可能超过一分钟,如果不用进程锁解决冲突的话两个进程一起执行就会有问题。后面提到的项目实例R ... 阅读全文 »
进程基础 发表于 2017-10-03 | 分类于 Linux 雨天,闲来无事用go语言总结一哈进程; 进程的定义 进程是计算机中已运行程序的实体.用户下达运行程序的命令后,就会产生进程.进程需要一些资源才能完成工作,如CPU使用时间、存储器、文件以及I/O设备,且为依序逐一进行,也就是每个CPU核心任何时间内仅能运行一项进程。简而言之:进程就是代码运行 ... 阅读全文 »
mysql优化 发表于 2017-09-19 | 分类于 mysql mysql 优化方向1.SQL优化a. sql 优化分析 b. 索引优化 c. 常用sql优化 d. 常用优化技巧 2.优化数据库对象a. 优化表的数据类型 b. 表拆分 c. 逆规范式 d. 使用中间表 3.优化Mysql Servera. Mysql内存管理优化 b. lo ... 阅读全文 »
高并发下的抢购、秒杀功能 发表于 2017-09-13 | 分类于 php 抢购、秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个:1 高并发对数据库产生的压力2 竞争状态下如何解决库存的正确减少(”超卖”问题)对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。重点在于第二个问题 创建表12345678910111213141 ... 阅读全文 »
Linux memcached 和php memcached 安装 发表于 2017-09-04 | 分类于 php 注意:这里所有软件都是默认位置,需自行判断软件位置(–prefix=/usr/local) Linux(memcached安装)libevent 安装memcached 依赖于 libevent wget https://github.com/libevent/libevent/release ... 阅读全文 »
MySql高级总结 发表于 2017-08-29 | 分类于 mysql 触发器 触发器是一个特殊的存储过程,不同的是存储过程要用CALL来调用,而触发器不需要使用CALL 也不需要手工启动,只要当一个预定义的事件发生的时候,就会被MYSQL自动调用。 注意:mysql语法以;为结束符,先修mysql定界符DELIMITER $记得最后修改回来 DELIMITER; ... 阅读全文 »
对于Php堆栈的理解 发表于 2017-08-25 | 分类于 php 动态申请的内存,如new出来的变量,就存储的堆内存空间;如果是局部变量,则使用的栈空间,全局变量和静态变量存储在其他的数据区。 PHP对象在内存堆栈中的分配对象在PHP里面和整型、浮点型一样,也是一种数据类,都是存储不同类型数据用的, 在运行的时候都要加载到内存中去用,那么对象在内存里面是怎么 ... 阅读全文 »
Workerman 初探 发表于 2017-08-15 | 分类于 php Workerman是一个高性能的PHP socket 服务器框架,workerman基于PHP多进程以及libevent事件轮询库,PHP开发者只要实现一两个接口,便可以开发出自己的网络应用,例如Rpc服务、聊天室服务器、手机游戏服务器等。 题外话:还有一款更加强大的,名为swoole,底层为 ... 阅读全文 »
TCP/IP协议族学习 发表于 2017-08-13 | 分类于 计算机网络 最近想做一款直播产品,特此学习一下计算机网络界的大佬-TCP/IP Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由 ... 阅读全文 »