Centos Python2 升级到Python3的简单实现

2016-6-22 杜世伟 Python

1. 从Python官网到获取Python3的包, 切换到目录/usr/local/src

wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz
2. 使用命令如下命令进行解压缩:

xz -d Python-3.5.1.tar.xz
tar -xf Python-3.5.1.tar.xz
3. 在/usr/local路径下创建目录--python3.5, 为第4步创建安装目录1. 从Python官网到获取Python3的包, 切换到目录/usr/local/src
wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz
2. 使用命令如下命令进行解压缩:

阅读全文>>

标签: linux python

评论(0) 浏览(10303)

《Redis官方教程》Redis集群规范

2016-6-20 杜世伟 Redis

Redis集群规范


欢迎来到Redis集群规范。在这里你可以找到有关Redis的算法和设计的基本原理。这篇文章是一项正在进行的工作,因为它是不断地与Redis的实际实现同步。

 主要属性和设计原理


Redis的集群目标


 Redis集群是一个分布式的实现,具有以下目标,按设计的重要性排序:

  • 高性能,并且多达1000个节点的线性可扩展性。没有代理,使用异步复制,并且在进行赋值时没有合并操作。
  • 可接受程度的写安全:当客户端与大多数master节点建立连接后,系统努力(使用最优的方式)保持来自客户端的写操作。通常有小窗口,其中确认的写操作可能会丢失。当客户端在一个小的分区中,窗口丢失写操作会更大。
  • 可用性:Redis集群支持网络分区——其中大部分主节点都可访问,并且不可访问的各master节点对应的从至少一个可访问。而且采用副本迁移,有多个从的主会提供一个从给没有从的主。

阅读全文>>

标签: redis

评论(0) 浏览(1990)

Python Virtualenv 虚拟环境

2016-6-16 杜世伟 Python

什么是virtualenv?

virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够:
1. 在没有权限的情况下安装新套件
2. 不同应用可以使用不同的套件版本
3. 套件升级不影响其他应用

阅读全文>>

标签: linux python Virtualenv

评论(0) 浏览(10754)

ERROR 1286 (42000): Unknown table engine 'InnoDB'

2016-6-14 杜世伟 Mysql


今天在操作数据的的时候,突然提示以下错误:
ERROR 1286 (42000): Unknown table engine 'InnoDB'
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.1.57    |
+-----------+
1 row in set (0.01 sec)
mysql> show engines;
+------------+---------+-----------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                   | Transactions | XA   | Savepoints |
+------------+---------+-----------------------------------------------------------+--------------+------+------------+
| CSV        | YES     | CSV storage engine                                        | NO           | NO   | NO         |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                     | NO           | NO   | NO         |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance    | NO           | NO   | NO         |
+------------+---------+-----------------------------------------------------------+--------------+------+------------+
4 rows in set (0.00 sec) mysql> show variables like 'have_innodb%'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | have_innodb | NO | +---------------+-------+ 1 row in set (0.00 sec) 至此发现数据库不支持INNOD引擎!!! mysql> show variables like '%dir%';

阅读全文>>

标签: mysql show enginx InnoDB

评论(0) 浏览(7451)

linux中快速清空文件内容的几种方法

2016-5-26 杜世伟 Linux

linux中快速清空文件内容的几种方法

: > filename 

> filename 

echo "" > filename 

echo > filename 

cat /dev/null > filename

cp /dev/null >filename

标签: linux cat cp

评论(0) 浏览(16825)

高性能服务器架构思路

2016-5-5 杜世伟 架构

在服务器端程序开发领域,性能问题一直是备受关注的重点。业界有大量的框架、组件、类库都是以性能为卖点而广为人知。然而,服务器端程序在性能问题上应该有何种基本思路,这个却很少被这些项目的文档提及。本文正式希望介绍服务器端解决性能问题的基本策略和经典实践,并分为几个部分来说明:

1. 缓存策略的概念和实例

2.缓存策略的难点:不同特点的缓存数据的清理机制

3.分布策略的概念和实例

4.分布策略的难点:共享数据安全性与代码复杂度的平衡

缓存

缓存策略的概念

我们提到服务器端性能问题的时候,往往会混淆不清。因为当我们访问一个服务器时,出现服务卡住不能得到数据,就会认为是“性能问题”。但是实际上这个性能问题可能是有不同的原因,表现出来都是针对客户请求的延迟很长甚至中断。我们来看看这些原因有哪些:第一个是所谓并发数不足,也就是同时请求的客户过多,导致超过容纳能力的客户被拒绝服务,这种情况往往会因为服务器内存耗尽而导致的;第二个是处理延迟过长,也就是有一些客户的请求处理时间已经超过用户可以忍受的长度,这种情况常常表现为CPU占用满额100%

阅读全文>>

标签: 架构 高性能 缓存 分布式

评论(0) 浏览(1867)

Mac 查看Git某个文件的历史记录

2016-4-20 杜世伟 git

在windows下面有TortoiseGit很方便的就能点击右键查看到某一个文件的提交记录,但mac在SourceTree要找到某一个文件的提交记录才方便查看到该文件的历史记录。 
方法: 
git log查看某一个文件的提交记录,然后根据git show 哈希值来看某一次提交记录,也可以直接在SourceTree下搜索该哈希值本看详细记录。


进入git项目目录
cd /projectName/

以下两种方式可以帮助你查看单个文件的更新log:

方式一:
1)、查看指定文件提交日志
git log fileName 
将显示文件的所有提交记录。 
注意: q退出日志展示效果,回车或向下键显示更多提交日志

阅读全文>>

标签: sed cat git log commit

评论(0) 浏览(2062)

Form表单传递参数的编码问题

2016-4-10 杜世伟 Php

工作中遇到后端接收前端数据,解析不正常通过分析原因如下:
如果前端在form表单提交的时候没有设置enctype属性,传递参数的时候最终以 application/x-www-form-urlencoded方式提交数据,这样传递的参数都进行了urlencode转码。正常情况下后端接收到的参数其实需要urldecode进行解码。由于前端传递参数的过程中没有对任何参数做过特殊处理,但是后端在接收有些参数是使用rawurldecode进行解码的(urldecode和rawurldecode对空空格号的处理方式不一样)。这个原因导致了后端数据解析失败

阅读全文>>

标签: PHP urlencode rawurldecode

评论(0) 浏览(12951)

sed命令详解

2016-4-4 杜世伟 Linux

1)简介
sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。
sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。
2)命令详解

阅读全文>>

标签: linux sed

评论(0) 浏览(14465)

PHP 实现多服务器共享 SESSION 数据

2016-4-3 杜世伟 Php

PHP 实现多服务器共享 SESSION 数据
稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块等,各个服务器通过统一接口对用户数据进行访问即可。由于Session存储默认是files即文件存储(即本机生成的session会以文件的方式存储),这时候就出现了各个服务器之间 SESSION 共享数据的问题。 
实现session共享方式有如下三种:
1)通过Redis实现Session共享:
实现方式,在php.ini中添加安装redis扩展,然后修改配置文件中的session存储方式!

阅读全文>>

标签: session redis.memcached.php

评论(0) 浏览(9537)

Powered by emlog 沪ICP备2023034538号-1