第一种情况:改动没有被提交 使用svn revert就能取消之前的修改。
主流程
最近在做一个系统优化的项目,经排查发现程序存在大量数据库操作并且是同步的,导致性能急剧下降。因相关数据库操作对实时性要求不是很强,所以打算部署一个数据库操作模块,负责异步化系统所有数据库操作请求。
gdb原理:利用操作系统提供的系统调用ptrace。详情请看
下文所操作机器已关闭swap。如描述有误,望轻拍,谢谢。本文理论基础
最近做mysql数据库备份和搭建。固作此文以此记录。
背景 最近做了一个需要,需要新增一个Mtop接口的参数(一个string字符串,通过fastjason反序列化为一个java类),其中新增的java类字段类型为Integer。因为自测不够严谨,导致了线上出现了exception。
XSS跨域攻击
记录些常用的语法,好记性不如烂笔头。
今天跟大家探讨下linux下内存相关的知识点。
Xshell
其实在Linux中,新建的线程并不是在原先的进程中,而是系统通过一个系统调用clone()。该copy了一个和原先进程完全一样的进程。不过这个copy过程和fork不一样。copy后的进程和原先的进程共享了所有的变量,运行环境(clone的实现是可以指定新进程与老进程之间的共享关系,100%共享就表示创建了一个线程)。这样,原先进程中的变量变动在copy后的进程中便能体现出来。
本文对select、pselect、poll、epoll作简单的介绍
信号
权限的一些基本概念可以查看《鸟哥的私房菜》,本文只讲解跟API相关的权限问题。
fork函数是用于创建一个子进程,该子进程几乎是父进程的副本,而有时我们希望子进程去执行另外的程序,exec函数族就提供了一个在进程中启动另一个程序执行的方法。它可以根据指定的文件名或目录名找到可执行文件,并用它来取代原调用进程的数据段、代码段和堆栈段,在执行完之后,原调用进程的内容除了进程号外,其他全部被新程序的内容替换了。另外,这里的可执行文件既可以是二进制文件,也可以是Linux下任何可执行脚本文件
```c int daemon(void){ pid_t pid = fork(); if( pid != 0 ) exit(0);//parent
realloc(void *__ptr, size_t __size) 更改已经配置的内存空间,即更改由malloc()函数分配的内存空间的大小。
IO操作步骤