Posts in category: skill

varnish-introduction

以前做网站的时候遇到了网站的访问量很大,而导致后端处理程序响应超时而导致的一些问题。当时采用的架构是nginx+php-fastcgi,同事想到了用nginx-proxycache来做页面缓存,效果也还行。下面我想介绍一下varnish的技巧

Read More +

php-curl相关的一些用法和问题

第三方登录库FACEBOOK接入问题,各种问题让人摸不到门

GFW不允许通过,设置CURL代理,代码如下

Read More +

java使用小记

c3p0连接池

c3p0做连接池,大量数据查找和更新,由于是并发任务,所以呢会出现数据库连接打开之后, 没有操作,当前连接会处于sleep状态,当超过wait_timeout的时间后,连接会被关闭 所以再想执行数据库操作的话,而从线程池里取连接时若是没加以验证的话,就会报错,这样我们可以适当的修改wait_timeout的值, set global wait_timeout = 60 若是权限不够,那只能通过修改c3p0的配置来达到目的 testConnectionOnCheckout 从连接池中取出连接时是否做连接检查。 默认是false,当设置为true时则会检查连接是否有效,若是无效就从连接池中剔除。该操作是为同步操作 testConnectionOnCheckin 往连接池中加入连接时是否做连接检查。 默认是false,当设置为true时则会检查连接是否有效,若是无效肯定就不加进去了。该操作是为异步操作 以上配置若是被设置为true时,肯定对性能是有一定的影响的。所以要两相权衡,哪个方案好便使用哪个方案 总的来说,配置很重要。

Read More +

mysql-tips

有些时候,你在操作MYSQL数据库当口遇到了些问题,那么记录下来以作后师

外键关联表数据删除限制 SET FOREIGN_KEY_CHECKS = 0; TRUNCATE TABLE table_name; 当然操作完成后还是得将设置还原 SET FOREIGN_KEY_CHECKS = 1;

mysql多主模式情况下,当有一台主机down机,重启后可能会发生主键冲突,若是以自增长做主键, 可以考虑设定规则,使得各主机之间的生产主键的规律各不相同 若是对主键没有太多要求可以使用unique函数生成id

Read More +

杂项

做这篇小记缘何,是时项目由Laravel5.0至Laravel5.1跨度很大,主要体现在class的引用方式,下面是一种解决方法,但是实用性不是很大 值得一提的是这个trait使用技巧

Step 1. Create a trait called as you desire, in example:

namespace YourProjectNamespace;
trait ClassEmulationTrait {
    static function class(){
            return __CLASS__;
    }
}  

Step 2. Use this trait within each class you need to emulate the ::class method.

namespace YourProjectNamespace;
class UserRepository{
    use ClassEmulationTrait;
}  

Step 3. Later in your code you could use:

 echo YourProjectNamespace\UserRepository::class();
Read More +

SimpleSAMLphp实现单点登录

前段日子,某去投机,结果遇到被问到SSO,就这几年的工作经验实在是没有应用过这种玩意,正好近来闲得发慌,找了些资料研究了一番

简介

SAML Security Assertion Markup Language 安全领域中用来交换认证和授权数据的标准,它是一种基于XML的协议, 在验证器,消费者,和服务器之间使用安全令牌包含断言来传递主要信息。 SAML2.0支持基于web的认证和授权,包括跨域单点登录,有助于减少向用户分发多个身份验证令牌的管理开销

Read More +

interview

DML:Data manipulation language

Read More +