Websocket) 群 创建 查找 添加 同意 拒绝(Http+Websocket) 聊天记录存储 心跳检测 消息重发 断线重连 Requirement PHP 7.1+ Swoole 4.3.4+ Composer Swoft >= 2.0.8 部署方式 Composer composer update bean app/bean.php 'db' => [ 'class' => Database =ws://im.gaobinzhan.com/im # 是否开启静态处理 这里我关了 让nginx去处理 ENABLE_STATIC_HANDLER=false # swoole v4.4.0以下版本 root /data/wwwroot/IM/public; } } Start 挂起 php bin/swoft ws:start 守护进程化 php bin/swoft ws:start -d 访问 怎么访问还用写吗???
2.composer update 该命令会根据composer.json配置文件中包依赖以及相应的版本,更新包的版本,但是该命令会将所有的包都更新到最新版本,在实际的项目中需要谨慎使用,尤其是在生产环境上面 // 查看所有已经安装的包的信息 composer show // 指定查看已经安装的包的信息 composer show topthink/framework Composer.json与Composer.lock 该文件主要是管理包版本使用的,当我们在使用composer update命令时,composer会自动根据composer.json的包版本依赖,生成对应的composer.lock文件,当我们下次在执行 Composer版本约束 在我们使用composer安装包时,不得不考虑的就是一个版本问题,因为不同的版本,存在兼容性问题,因此我们在使用该工具安装包时需要特别的注意包版本,如果使用不当很容易导致项目因为包版本问题瘫痪 ,file.psr-0逐渐的被抛弃了,由于一些老项目还在使用该规则,因此部分项目仍在使用。
一键领取预热专享618元代金券,2核2G云服务器爆品秒杀低至18元!云产品首单低0.8折起,企业用户购买域名1元起…
解决K8S 1.18.0版本REPLICAS被弃用问题 执行语句 kubectl run nginx-deploy --image=nginx:1.14-alpine --port=80 --replicas deprecated, has no effect and will be removed in the future.并创建出一个nginx-deploy的pod 注意:在K8s v1.18.0版本以后 ,–replicas已弃用 ,推荐用 deployment 创建 pods 使用yaml文件的方式,创建nginx服务,删除上面语句生成的nginx-deploy 找到原先安装的pod的name kubectl get pods 删除上面语句产生的nginx-deploy kubectl delete pods nginx-deploy 创建Nginx yaml资源清单 vi nginx.yaml # API 版本号
PHP 老项目常见质量问题 问题一:未提交 composer.lock Composer 官方文档(getcomposer.org)提醒:一定要提交 composer.lock 文件到代码库,才能确保所有人 、所有机器安装的依赖包都是同一版本。 解决方案:删除 vendor,执行 composer install,再把 composer.lock 提交到代码库。 ? 结果报错: 使用了废弃的包; 使用了已废弃的语法; 框架命令执行失败。 修改之后即可解决,从这个技术细节可以看出此开源项目无法跟上 PHP 官方的版本升级,在我们做技术选型时要避免使用这种落后的项目、框架,而应使用全球知名框架,能够紧跟语言官方版本升级,目前 PHP 7.1 已经废弃,7.2 即将结束维护升级,建议大家使用 7.4 。
----- PHP 老项目常见质量问题 问题一:未提交 composer.lock Composer 官方文档(getcomposer.org)提醒:一定要提交 composer.lock 文件到代码库 ,才能确保所有人、所有机器安装的依赖包都是同一版本。 [3] 结果报错: 1.使用了废弃的包; 2.使用了已废弃的语法; 3.框架命令执行失败。 查看 PHP 官方文档可以发现:PHP 7.4 不赞成使用花括号语法来访问数组元素和字符串偏移量。 [4] 修改之后即可解决,从这个技术细节可以看出此开源项目无法跟上 PHP 官方的版本升级,在我们做技术选型时要避免使用这种落后的项目、框架,而应使用全球知名框架,能够紧跟语言官方版本升级,目前 PHP 7.1 已经废弃,7.2 即将结束维护升级,建议大家使用 7.4 。
PHP 老项目常见质量问题 问题一:未提交 composer.lock Composer 官方文档(getcomposer.org)提醒:一定要提交 composer.lock 文件到代码库,才能确保所有人 、所有机器安装的依赖包都是同一版本。 image.png 结果报错: 使用了废弃的包; 使用了已废弃的语法; 框架命令执行失败。 查看 PHP 官方文档可以发现:PHP 7.4 不赞成使用花括号语法来访问数组元素和字符串偏移量。 image.png 修改之后即可解决,从这个技术细节可以看出此开源项目无法跟上 PHP 官方的版本升级,在我们做技术选型时要避免使用这种落后的项目、框架,而应使用全球知名框架,能够紧跟语言官方版本升级 ,目前 PHP 7.1 已经废弃,7.2 即将结束维护升级,建议大家使用 7.4 。
赞助专享版 另外这是一个双版本应用,就是它会有两个不同的版本,赞助版基于普通版的优化而来,在功能和性能上做了很大提升,大大加快运行速度,并且保持优先的更新. 那么,问题来了,如何获得赞助专享版呢? 使用composer安装moeins $ composer create-project a-jue/moeins #等待安装依赖库后,会自动执行安装脚本 #出现如下提示表示安装完成 > Illuminate 完成 给本项目一个Star~ 访问你的域名即可 通过Git安装 1. Clone本项目 git clone https://github.com/178146582/moeins.git 2. composer安装扩展包 composer install
requirement.txt 中提到要求安装的keras>=2.0.8,如下所示: 而 load_weights_from_hdf5_group_by_name 只在 keras2.0.8 的版本中出现 ,不会出现在最新的 keras 版本中出现。 我查看了下当前安装的 keras 版本,是2.2.0,按照建议,将其更改到2.0.8,操作如下: 先查看版本,然后用 pip uninstall keras 将其卸载,再用 pip install keras ==2.0.8 安装指定版本。 解决方案二: 这个问题在 Mask-R-CNN 的 issue 中有提到,由 farzadzare 提出: 分析的大致原因也是 keras 的版本问题,采取的解决方案就是用 saving来取代代码中的
的版本中出现,不会出现在最新的keras版本中出现。 我查看了下当前安装的keras版本,是2.2.0,按照建议,将其更改到2.0.8,操作如下—— 先查看版本,用 pip uninstall keras 卸载,在用pip install keras ==2.0.8 安装指定版本。 重新安装后再执行demo.ipynb那行代码,然后立马尝试运行Mask_RCNN-master\samples\中的demo.ipynb文件,问题没有解决啊!!! 解决方案二: 这个问题在mask R-CNN的issue中有提到,由farzadzare提出: 分析的大致原因也是keras的版本问题,采取的解决方案就是用 saving来取代代码中的
或者可能在 PHP_CodeSniffer 中存在一个已修复的 bug ,代码就会检测出新的格式问题,这会再次导致错误的构建。 依赖的升级要慎之又慎,不能撞大运。 该库开发完成后,在实际项目中使用该库,就可能存在安装的 Monolog 是一个新版本 , 而此时就会和该库存在不兼容。可是你在之前根本就不会注意到兼容问题就因为这个 composer.lock! 因此,最佳处理方式就是把 composer.lock 添加到 .gitignore 文件中,这样就避免了不小心提交它到版本库中引发的问题。 merge 推荐 Trunk Based Development 方式(常用佳品,不会有错),使用临时的特性分支纠正这种问题。 如果存在就升级应用程序 本地测试应用程序(使用 Symfony 的话还能在调试栏看到弃用警告) 提交修改(包括 composer.json 、 composer.lock 及其他新版本正常运行所做的必要修改
Composer是PHP中用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮你安装这些依赖的库文件。 如果A依赖B的版本是1.0.0,如果C依赖B的版本是2.0.0,项目当中是否没导入同一包用不同版本的。 /manual/zh/language.oop5.autoload.php Composer提供了四种自动加载的方式,分别是PSR-0、PSR-4、生成classmap以及直接包含files。 虽然已被官方废弃,但因为主流框架都已实现psr-0,因此composer仍然使用psr-0来向下兼容。 psr-4方式,是composer推荐使用的一种方式,也是psr-0的替代方案,因为在PSR-0中目录结构要与命名空间层层对应,无法插入一个单独的目录。
Yii:使用Composer或下载一个压缩包,推荐使用前者,这样只需执行一条简单的命令就可以安装新的扩展或更新Yii了 通过Composer安装 如果你还没有安装可以先看我之前的文章安装一下Composer ,它是通过 Composer 管理 bower 和 npm 包所必须的,此命令全局生效,一劳永逸 第二条命令会将 Yii 安装在名为 basic 的目录中,你也可以随便选择其他名称 如果想要安装Yii的最新开发版本 ,可以使用一下命令代替 composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic basic 如果你嫌弃Composer Web 文档根目录下的 basic 目录中,且该 Web 服务器正运行在你自己的本地localhost上,访问后如下图所示,就说明安装成功了 ? 、caching、等级式RBAC、Web服务到主题化,YII提供了今日Web 2.0应用开发所需要的几乎一切功能 Yii具有高度的可重用性和可扩展性,是纯粹的面向对象
服务器是Nginx的 照着文档通过composer安装了一个非最新版本 (5.0)那版。 开始是看中文文档,死活安装不上,后来看了英文文档发现这个版本的安装说明是不同的 按照这个命令 才能正确地安装 composer create-project laravel/laravel {directory 后来发现在laravel5 下面用 html即使按照上面设置 还是有问题, 根本搞不定,所以还是放弃了在laravel5下面使用html和form的想法,干脆还是先用laravel4吧,毕竟教程也多。 composer self-update 即可 发现用命令安装总是报错,直接放弃 ,去官网直接下载包 https://github.com/JeffreyWay/Laravel-4-Generators \composer\autoload_classmap.php 相关部分 拷贝 \vendor\way文件包 修改app.php 默认的时区需要改 ‘timezone’ => ‘Asia
Composer 作为 PHP 的包管理工具,为 PHPer 们提供了丰富的类库,本文来一步步剖析 Composer 的原理 从 __autoload魔术方法 到 spl_autoload_register ,在 php7.2 后使用 spl_autoload_register 我们来看一下 自动加载的未来: spl_autoload_register PHP的SPL库作为扩展库,其中包含很多类库,已经于5.3.0 版本后默认保持开启,成为PHP的一组强大的核心扩展库。 ,不多解释了,上面已经说了,不了解闭包函数的作用可以百度百度 bool throw:当autoload_function无法成功注册时,是否抛出异常 bool prepend:如果是true,将会添加一个 我们来看一下,因为考虑到php版本的问题,所以有多种加载方式,比如我们耳熟能详的 命名空间自动加载 在 vendor 下面建立目录 Model/UserModel.php、autoload_psr4.php
问题描述 在执行 apt-get 安装命令时,提示有错误发生。这个软件包 ttf-mscorefonts-installer 用于从互联网下载微软文件(这些文件由微软免费提供)的字体,并安装它们。 问题描述 使用 docker 官方的镜像,访问速度慢到你怀疑人生,甚至有可能访问失败。 ! 解决办法 这里采用配置使用国内知名的云计算网站 DaoCloud 的镜像源。 ---- composer 加速 ? 问题描述 国内访问 composer 官方镜像网速贼慢,甚至还会访问失败。 ! 如图所示已成功配置淘宝 NPM 镜像,但是这里提示说这个 npm 不支持当前的 Node.js 版本,安装最新版的 Node.js 就行。 查阅相关资料后发现,原来 --host-compilation 参数是已被弃用了的。
,请先参考了一下这篇文章Composer – PHP的春天依赖管理的新时代,或者这一篇简介 使用Composer Composer是PHP的一个包依赖管理工具,你可以使用第三方库也可以自行开发,现在我要告诉你如何创建一个 Composer包并且发送到Packagist(其他开发者可以通过它在他们项目中使用这些发布到Packagist上的包) 创建包 我们可以创建一个新项目来使用Composer。 ,后期在Packagist中搜索使用的,description包的描述,license协议,authors作者信息,minimum-stability包的状态,开发版、稳定版等 然后我们添加对于PHP的版本要求和自动加载 之前,我们需要在Github创建仓库来存储我们的代码才能提交到Packagist,最好是发布正式版本,进入我们仓库的Github主页,找到导航上“releases”,点击进去创建一个版本,填写好信息之后就可以发布版本了 配置下对应的GitHub Service Hook实现代码提交后Packagist自动拉取更新 GitHub Service Hook服务已被弃用,我们可以使用Webhooks来实现代码提交后Packagist
框架安装问题 在Yii2社区里经常会遇到一类问题,那就是 安装完官方推荐的版本后 1 为什么没有vendor文件夹? '/vendor', 总结 我们在使用compser时需要考虑以下三个问题 1 composer install 和composer update的区别 2 composer版本管理和稳定性 3 公共组件如何以 composer包的方式输出和维护 composer install 应该是最常用的命令,composer会根据本地的composer.json安装包,将下载的包放入项目下的vendor目录下,同时将安装时候的包版本信息放入到 这个命令要谨慎使用。 如果组件已经使用composer引用到项目中,成为公共组件,需要谨慎使用composer命令,当然需要专人负责维护,不设置共享操作权限。 另外一种思路也是可以尝试的,对于软件安装包的版本,统一以官方最新的版本为主,如果由此产生兼容或者其它问题,针对性的解决新问题。
首先把keepalived放到容器里了,版本也用了比较新的2.x.x以上 然后使用kubernetes static pod去管理keepalived服务 keepalived放到容器里的好处 安装成功率更高 ,更跨平台, 传统方式如用yum安装或者其它,如果采用那些办法在别的一些发型版系统上sealos就不可用。 其次,很多系统的源不一样导致版本不一致造成问题,如果通过源码编译可能一些系统库版本直接导致编译不通过,所以为了提高高可用的安装成功率,放容器里是最好的方式 无需额外对keepalived增加监控, 因为是 n参数让keepalived在前台启动,之前在前台启动有一些无法执行检测脚本的问题,和官方沟通后解决, 不然可能需要用一些守护进程去守护,就比较恶心了. keepalived配置, 模板文件: 模板里的值对应下文 MASTER will reduce weight(-25), so vip will move on BACKUP node fi 这里网上有很多人简单粗暴的配置检测haproxy进程在不在,其实是有问题的
而到今天PHPer每天都要使用Composer,回头看看这5年到底发生了什么? 1. Composer包太少,直到今天支付宝和微信的SDK包还不支持Composer。 2. 这种包管理方式有学习成本,旧方式一句include走天下。 3. 引入Composer后对代码的侵入性很强。 3. 有phpize安装扩展程序够用了。 而今天的情况已经大不一样: 1. 在规范面前,一切阻碍都是纸老虎,侵入性问题也不再是问题。 4. Composer现阶段无法替代phpize。 Composer的使用方法 1. Composer特殊设置 在国内首先要解决的就是网络问题,下面是多个Composer源,推荐使用aliyun。 版本号通配符(非常重要) 在composer.json文件中需要设置依赖包的版本号,不同的通配符会导致`composer update`更新不同版本的依赖包。
是有相当大的用户的,但是基于政策和运营的考量很多网站都陆续放弃论坛的运营。而Discuz! Q官方有推送发布内测版本,可以申请内测,在这里老蒋也有申请内测,于是准备在服务器中配置看看,因为看到官方介绍的安装文档比较复杂,并不是直接的下载安装包后直接可视化安装的,这个应该是出于内测的考虑才这么复杂的 Q 使用 Composer 来管理项目依赖。因此,在使用 Discuz! Q 之前,请确保你的机器已经安装了 Composer。 第二、下载内测Discuz! composer会提示输入用户名和密码,请在用户名处输入通过API密钥管理 创建的 SecretId,在密码处输入 SecretKey。当composer询问是否将密码保存时,可选择Yes。 参考网站:https://discuz.chat/docs/ 本文出处:老蒋部落 » 新版本Discuz! Q内测体验 记录Composer安装过程 | 欢迎分享
云端获取和启用云服务器,并实时扩展或缩减云计算资源。云服务器 支持按实际使用的资源计费,可以为您节约计算成本。 腾讯云服务器(CVM)为您提供安全可靠的弹性云计算服务。只需几分钟,您就可以在云端获取和启用云服务器,并实时扩展或缩减云计算资源。云服务器 支持按实际使用的资源计费,可以为您节约计算成本。
扫码关注云+社区
领取腾讯云代金券