邢栋博客
邢栋博客,Action博客,记录工作和生活中的点点滴滴
node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by node)
node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by node)
使用ndoe -v的时候报上面的错误
原来我在之前安装gcc4.8的时候把函数库文件复制错地方了,我的是64位系统,要复制到/usr/lib64/下面
cp ~/gcc-build-4.8.1/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.18 /usr/lib64
ln -sf /usr/lib64/libstdc++.so.6.0.18 /usr/lib64/libstdc++.so.6
这样就可以解决了!具体安装细节可以看上一篇日志 linux centos编译node报错 里面有gcc的安装
SSE(Server-Send Event)实现服务端推送(转)
传统的网页都是浏览器向服务器“查询”数据,但是很多场合,最有效的方式是服务器向浏览器“发送”数据。比如,每当收到新的电子邮件,服务器就向浏览器发送一个“通知”,这要比浏览器按时向服务器查询(polling)更有效率。
服务器发送事件(Server-Sent Events,简称SSE)就是为了解决这个问题,而提出的一种新API,部署在EventSource对象上。目前,除了IE,其他主流浏览器都支持。
简单说,所谓SSE,就是浏览器向服务器发送一个HTTP请求,然后服务器不断单向地向浏览器推送“信息”(message)。这种信息在格式上很简单,就是“信息”加上前缀“data: ”,然后以“\n\n”结尾。
SSE与WebSocket有相似功能,都是用来建立浏览器与服务器之间的通信渠道。两者的区别在于:
WebSocket是全双工通道,可以双向通信,功能更强;SSE是单向通道,只能服务器向浏览器端发送。
WebSocket是一个新的协议,需要服务器端支持;SSE则是部署在HTTP协议之上的,现有的服务器软件都支持。
SSE是一个轻量级协议,相对简单;WebSocket是一种较重的协议,相对复杂。
SSE默认支持断线重连,WebSocket则需要额外部署。
SSE支持自定义发送的数据类型。
从上面的比较可以看出,两者各有特点,适合不同的场合。
目前开发的项目中有两处用到了SSE:
1.锁屏,用户登录成功后,启动一个SSE进程,服务器自定义一个事件,每隔几秒返回用户的状态,浏览器监听这个事件,当用户的登录状态失效果,弹出登录框让他登录,以此达到锁屏的效果。
2.新消息提醒。服务器定义消息提醒事件,浏览器监听这个事件,当有新消息时,以Web Notification的方式弹出消息,并可定义用户的点击事件。
linux下安装composer和laravel框架
cd /alidata/server/
wget https://getcomposer.org/composer.phar //下载
cp composer.phar /bin/composer
cd /alidata/www
composer create-project laravel/laravel --prefer-dist laravel_study //速度比较慢
如果想下载低版本的,可以新建一个composer.json,编辑后执行composer ... //没测试
nginx配置
location / {
try_files $uri $uri/ /index.php?$query_string;
}
linux下需要修改文件权限才能正常访问
chmod -R 777 storage
chmod -R 777 bootstrap/cache //可以先不执行
下面就可以正常访问了
error: The requested URL returned error: 403 Forbidden while
github
git push报错
error: The requested URL returned error: 403 Forbidden while accessing https://github.com/xingdong1117/server.git/info/refs
vim ./git/config
修改
[remote "origin"]
url = https://github.com/xingdong1117/server.git
为
[remote "origin"]
url = https://xingdong1117@github.com/xingdong1117/server.git
ps:xingdong1117是我的github用户名
[大型网站技术架构]读书笔记
总体来说这本书还不错,是一本不错的理论书,介绍了很多关于大型网站的优化
可能这本书出版时间比较没有讲到nginx 和redis
书里面有几句话感同身受
大型网站的架构师最有价值的地方不在于他们掌握了多少技术,而在于他们经历过多少故障。感觉我们这些普通程序员也是这样。
一群优秀的人做一件他们热爱的事,一定能取得成功。
程序员在哪个公司都差不多,不要因为一时的安逸而懈怠。要通过不断的学习来提高自己。
还有要多了解公司的业务,不断去尝试优化公司的业务代码,找到自己在公司和工作中的价值。
什么是最好的架构师
就是通畅情况下团队成员感觉不出他的存在,貌似没有他工作也可以完成的很好,但是如果他真的离开了,大家就会感觉心里空荡荡的,没了主心骨。
[大型网站技术架构]读书笔记之网站的伸缩性架构
应用服务器集群的伸缩性设计
1.HTTP重定向负载均衡
2.DNS域名解析负载均衡
3.反向代理负载均衡
4.IP负载均衡
5.数据链路层负载均衡
6.负载均衡算法 轮询 加权轮询 随机 最少连接 源地址散列
分布式缓存集群服务器的伸缩性设计
1.分布式缓存的一致性Hash算法
数据存储服务器集群的伸缩性设计
1.Amoeba
2.Cobar
来自:大型网站技术架构 核心原理与案例分析
[大型网站技术架构]读书笔记之大型网站性能优化
web前端性能优化
1.浏览器访问优化
a.减少http请求
b.使用浏览器缓存
c.启用文件压缩html,css,js
d.减少cookie传输
e.css放在页面最上面,js放在页面最下面
2.CDN加速
3.使用反向代理
应用服务器性能优化
1.分布式缓存
2.异步操作(消息队列)
3.使用集群
4.代码优化
a.多线程
b.资源复用
c.数据结构
d.垃圾回收
存储性能优化
来自:大型网站技术架构 核心原理与案例分析