序言
新浪微博在2014年3月公布的月活跃用户(MAU)已经达到1.43亿,2014年新年第一分钟发送的微博达808298条,如此巨大的用户规模和业务量,需要高可用(HA)、高并发访问、低延时的强大后台系统支撑。
微博平台第一代架构为LAMP架构,数据库使用的是MyIsam,后台用的是php,缓存为Memcache。
随着应用规模的增长,衍生出的第二代架构对业务功能进行了模块化、服务化和组件化,后台系统从php替换为Java,逐渐形成SOA架构,在很...
Nginx 的配置文件 upall.cn.conf:
server {
listen 80;
server_name upall.cn;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443;
server_name upall.cn;
ssl on;
ssl_certificate /www/cert/upall.cn_bundle.crt;
ssl_certificate_key /www/cert/upall.cn.key;
root /www/upall.cn;
index index.html index.php index.htm;
location ~ \.php$ ...
简介
这是一款根据指定大小自动设置缩略图的插件。
为一堆不同尺寸的图片创建相同尺寸的缩略图可不是件容易的事,除非有一个强大的后台程序或靠谱的软件,如果都没有或不想使用后台程序,那么可以试试 jQThumb。jQThumb 是一款基于 jQuery 的缩略图插件,它能够很方便的制作指定的尺寸的缩略图。
jQThumb 兼容所有浏览器,包括 IE6。在高级浏览器中使用背景方式实现,并设置图片的尺寸(background-size)和位置(background-po...
官网:http://alvarotrigo.com/fullPage/
GitHub:https://github.com/alvarotrigo/fullPage.js
简介
如今我们经常能见到全屏网站,尤其是国外网站。这些网站用几幅很大的图片或色块做背景,再添加一些简单的内容,显得格外的高端大气上档次。比如 iPhone 5C 的介绍页面(查看),QQ浏览器的官网站。如果你也希望你的网站能设计成全屏的,显得更上档次,你可以试试 fullPage.js。
fullPage.js 是一个基于 jQuery 的插件,它能...
有时候网站末尾会“莫名”出现一些本来没有的代码,这些可能是宽带运营商添加的,也有可能是网站中毒被黑客攻击后篡改了。
这些代码通常都会出现在文末,而CSS的~选择符可以选择元素后边的所有兄弟(同一级、平级)元素。
前提:
假定页面最后一个标签是footer(footer是HTML5标签,里边可以有其它元素)
CSS式的解决办法:
/* 不显示footer后边的元素 */
body > iframe,
footer ~ * {
display:none !important;
}
jQ...
方法1、使用 -e 开启转义后用 \e 或 \033 输出 Esc 符号
语法:
echo -e "\e[样式;前景色代号;背景色代号m需要设置颜色的字符串\e[0m"
echo -e "\033[样式;前景色代号;背景色代号m需要置颜色的字符串\e[0m"
例子:
echo -e "\e[0;31m ALERT \e[0m" #透明底红字(终端默认的背景色)
echo -e "\e[0;31;1m ALERT \e[0m" #透明底红字 + 高亮效果
echo -e "\e[47;...
mutt 默认使用 sendmail 发邮件,发送到邮箱时容易因为发件人不可信而被拒绝,将其更改为 smtp 方式可以解决这个问题,需要事先准备好 smtp 信息(发送邮件的smtp服务器、邮箱帐号、邮箱密码)。
mutt发信需要依靠其它程序,比如之前是 sendmail ,现在我们改为 msmtp(An SMTP client)。
安装 Msmtp
yum install -y msmtp
或从这里下载:http://sourceforge.net/projects/msmtp/files/msmtp/
tar -jxvf msmtp-1.4.32.ta...
概要
禅道服务器一台,Git服务器一台。禅道服务器集成Git、关联Git服务器的提交日志。
方法为:在禅道上也装一个git服务器,gitServer把代码 push 过来,两台服务器都同时有服务端和客户端。
下文中 zentaoServer 代表禅道服务器,gitServer 代表 git server。
zentaoServer 安装 git server
生成 ssh-key
ssh-keygen
cat id_rsa.pub >> ~/.ssh/authorized_keys
scp -P 22 id_rsa root@gitServer:/home/git/ # gitSer...
需要更改默认的帐号 pi 为其它名称的话,可以参考下文。
1、启用 root 帐号
$ sudo passwd root
输入新的 UNIX 密码:
$ sudo passwd --unlock root
passwd:密码过期信息已更改。
2、重启后以 root 身份登录(重启用于关闭 pi 打开的程序)
3、修改用户名 pi 为 upall
# usermod -l upall pi
4、修改组名 pi 为 upall
# groupmod -n upall pi
5、更改 pi 的家目录 为 upall 的家目录
# mv /home/pi /home/upall
6、修改...
注记:
这篇文章被转过N多次,之间还被换过名字,根据时间、内容、内容所在网站类型推断原文可能来自BlueDavy于2008-09-03 19:12时写的的大型网站架构演变和知识体系。
正文:
之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的、ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演变,再加上近来感觉有不少同学都很难明白为什么一个网站需要那么复杂的技术...
什么是PPA?
PPA是ubuntu下的一个软件存储库(Personal Package Archive,个人软件包存档),由Canonical公司提供,其允许开发者和爱好者通过软件中心给Ubuntu用户提供软件的最新版本。
以前安装软件时通常需要添加包含有某软件的软件源才能通过命令安装需要的软件,PPA只是将修改软件源的方式进行了优化,通过添加PPA源的方式来更新 sources.list。
以前的操作:
a、修改软件源:编辑 /etc/apt/sources.list 文件,添加以下两...
查看相关系统常量:
[upall@svr ~]$ getconf LONG_BIT
32
[upall@svr ~]$ getconf LONG_BIT
64
使用文件类型检测命令file来查看:
[upall@svr ~]$ file /bin/ls
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=4e98cc02a1f4cd8138031e8db6974a7ca083a103, stripped