在知乎上看到了一篇关于讲解正向代理和反向代理的文章, 觉的还不错
https://www.zhihu.com/question/24723688
最近开发了个项目代码是放在公司的代码仓库里的,然后也想放在自己的github仓库里,下面配置可以实现:
1 编辑你本地的代码 .git/ 目录下的 config 文件,添加如下配置即可, 前提是开通代码库权限:
[remote "all"]
url = ssh://git@git.xxxxxxx/user/cron_monitor.git
url = git@github.com:xxxxx/cron_monitor.git
其中每个url代表一个仓库, ssh 和 http 方式都可以
2 然后执行 git push all 命令即可
最近在和朋友讨论编译型语言和解释型语言的一些细节, 整理了一下:
1 传统意义上的所谓编译和解释, 区别在于代码是什么时候被翻译成目标CPU的指令, 这是一直以来大家更认可的更约定俗称的定义
2 对 C 语言或者其他编译型语言来说,编译生成了目标文件,而这个目标文件是针对特定的 CPU 体系的, 为 ARM 生成的目标文件,不能被用于 MIPS 的 CPU。这段代码在编译过程中就已经被翻译成了目标 CPU 指令,所以,如果这个程序需要在另外一种 CPU 上面运行,这个代码就必须重新编译。
3 对于各种非编译型语言(例如python/java)来说,同样也可能存在某种编译过程,但他们编译生成的通常是一种『平台无关』的中间代码, 这种代码一般不是针对特定的 CPU 平台,他们是在运行过程中才被翻译成目标 CPU 指令的,因而,在 ARM CPU 上能执行,换到 MIPS 也能执行,换到 X86 也能执行,不需要重新对源代码进行编译。
4 至于为什么会有虚拟机的存在?这个答案也很简单了,因为那些非编译型语言生成的并不是目标平台的代码,而是某种中间代码。而能够运行这种中间代码的机器并不广泛存在,所以我们在每个不同的平台中用软件模拟出这个假想平台的虚拟机, 这个虚拟机执行这种中间代码,而虚拟机负责把代码转换成最终的目标平台上的指令。
常见的进程通信方式有:消息队列、共享内存与信号量、管道、socket,注释和代码请在github中查看。 github地址:https://github.com/wanghongjun2014/php_thread_demo
由于公司业务需要, 需要在一台线上机器装mysql5.6/5.7, 之前是装了mysql5.1(但是没有人用), 因为是线上机器, 所以装的时候比较谨慎, 记录下遇到的坑
step1 : 检测系统是否自带安装mysql
yum list installed | grep mysql
step2 : 删除系统自带mysql及依赖, 可能要删除多个,
yum -y remove mysql-libs.x86_64
step3: 给CentOS添加rpm源,并且选择较新的源(安装5.6或者5.7根据自己的需要)
# wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
# yum localinstall mysql-community-release-el6-5.noarch.rpm
# yum repolist all | grep mysql
# yum-config-manager --disable mysql55-community
# yum-config-manager --disable mysql56-community
# yum-config-manager --enable mysql57-community-dmr
# yum repolist enabled | grep mysql
ps : yum-config-manager命令如果找不到的话, 可以通过如下命令安装, 系统默认是没有安装这个包的
yum -y install yum-utils
step4: 安装mysql 服务器
yum install mysql-community-server
step5 : 启动mysql, 设置开机启动
service mysqld start
chkconfig --list | grep mysqld
chkconfig mysqld on
mysql_secure_installation
1 mysql启动失败, 查看mysql-error log, 如下图所示
原因是/etc/my.cnf里配置的data_dir目录空间不足引起的, 更换目录即可
参考文章:https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html
$server->on('Request', function ($req, $resp) {
echo "hello world";
});
class A
{
static function test($req, $resp)
{
echo "hello world";
}
}
$server->on('Request', 'A::Test');
$server->on('Request', array('A', 'Test'));
function my_onRequest($req, $resp)
{
echo "hello world";
}
$server->on('Request', 'my_onRequest');
class A
{
function test($req, $resp)
{
echo "hello world";
}
}
$object = new A();
$server->on('Request', array($object, 'test'));