因为服务器里在跑一些老项目兼容问题很多,一直运行PHP7.0版本没有升级。在对接微信分时需要使用到AES-256-GCM加密需要调整PHP环境,决定先升级到PHP7.2,升级后发现openssl_sign()报错,排查后做下简单兼容调整说明。做三方对接时时常会出现问题,尤其是运行环境发生变化时。对于PHP环境主要分为:php版本、扩展库版本。如果出现兼容性问题则首先需要确认环境问题,避免走弯路。o
linux系统下时常会需要安装或升级更新各种应用包,安装方式多样化,如果存在编译安装会更灵活自由选择扩展,方便达到应用目标,当然如果没有特殊要求还是不建议使用编译安装,毕竟安装时间长失败率高。目前主要安装升级方式安装包管理器比如:yum、apt优点:安装快速方便,成功率高缺点:安装选项固定,安装可选版本不多,很少安装最新版应用容器镜像比如:docker优点:安装方便,成功率高,可安装各种版本、方便
PHP长连接的原由数据库长连接对于PHP来说并不常用,实际上PHP是支持数据库长连接。PHP是单进程(或线程)工作并且大部分情况是由低层去协调,一般情况下只有保证当前进程(或线程)不结束长连接才会有效(即相同的连接地址与账号只会共用同一个连接,不会因为多次发起连接而创建多个连接),并且没有像JAVA常驻内存中可以自行开发连接池去管理这些长连接。很多开发同学认为使用了长连接的代码就代表开启了长连接的
一些很小的项目一般不会特意使用或注意数据锁,其实在事务操作修改与删除时就已经有隐式加锁。一般所有涉及到共享数据都会考虑下数据的原始性问题,保证数据在使用或修改时原始性没有被破坏就需要锁定数据所有权;除非任何时刻同一时间只有一个进程在运行,但这种业务非常少。锁会增加性能开销,使用不合理容易影响项目性能甚至会造成死锁。Mysql数据库锁受引擎影响,不同的引擎锁的方式不一样。常用的引擎:MyISAM引擎
laravel已经有很多项目在使用,但是路由配置却是一个不可缺少的工作,很多时候路由配置工作不仅增加重复工作量而且还会增加代码开销,当项目到一定的级别时路由配置数量将是惊人的。很多时候不得不认为laravel路由配置虽然灵活但很臃肿,反而使用其它可以自动匹配的路由的框架更方便。当项目中路由是按命名空间\类名+方法名时就可以使用通用的配置方式来简化路由配置。如果laravel使用自动匹配路由是否会折
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号