0%

调试安卓设备adb命令记录
1.查看已连接的设备列表
adb devices

2.连接设备
adb connect IP

3.断开设备
adb disconnect IP

打开chrome浏览器adb调试工具
chrome://inspect/#devices

打印日志
adb shell logcat -v threadtime > 你的目录

微服务

微服务就是一些协同工作的,小而自治的服务。
随着需求的迭代,新功能的增加,代码库往往会变得越来越大,尽管我们极力希望在巨大的代码库中做到清晰的模块化,但事实上模块与模块之间的界限很难划分得清楚,逐渐地相似的功能代码在代码库中随处可见,以致于在迭代时想要知道该在什么地方做修改都很困难,修复 Bug 和增加新特性新功能越来越难。
在一个单体系统中,通常会创建一些抽象层或者实现模块化来保证代码的 内聚性,从而避免上面提到的问题。

微服务则将这一理念应用在独立的服务上,根据业务的边界确定服务的边界,每个服务专注于服务边界之内的事情,因为可以避免很多由于代码库过大衍生出来的各种问题。
那么一个微服务到底应该多微小?足够小即可,不要过小。那么怎么衡量一个系统是否拆足够小了呢?当你面对这个系统时,不会再有 “过大” 想要拆小它的欲望时,那么它应该就足够小了。服务越小,微服务架构(Microservice) 的优点和缺点也就越明显,使用的服务越小,独立性带来的好处就越多,但管理大量的服务也会更加复杂。

一个微服务就是一个独立的实体,它可以独立被部署,也可以作为一个操作系统进程存在。服务与服务之间存在隔离性,服务之间均通过网络调用进行通信,从而加强服务之间的隔离性,避免紧耦合。服务之间应该可以彼此独立进行修改,并且某一个服务的部署不应该引起该 服务消费方(Service Consumer) 的变动。这就要求我们需要考虑这些 服务提供方(Service Provider) 什么应该暴露,什么应该隐藏,如果暴露得过多,那么 服务消费方(Service Consumer) 会与该服务的内部实现产生耦合,这会使得服务直接产生额外的协调工作,从而降低了服务的自治性。

阅读全文 »

Composer 的版本约束可以分为 版本号约束 和 稳定性约束,两者结合共同影响着 Composer 的版本约束。

版本号从大到小排列,稳定性从 stable、RC、beta、alpha、dev 排列,先排版本号后稳定性。

阅读全文 »

开发过程中需要uniapp上传图片到阿里云oss,uniapp官方文档文件上传不支持PUT方式
搜索解决方案并记录
Uniapp 通过 get 请求获取文件字节流后,再使用PUT请求上传文件

1
2
3
4
5
6
7
uni.request({
url: path, //仅为示例,并非真实接口地址。
responseType: 'arraybuffer',
success: (res) => {
console.log(res);
}
});

1.在php官网下载页下载php的编译安装包,这里以7.4.28举例
https://www.php.net/downloads.php
找到php-7.4.28.tar.gz,右键复制下载链接,例如:
https://www.php.net/distributions/php-7.4.28.tar.gz
centos终端输入命令进行下载:
wget https://www.php.net/distributions/php-7.4.28.tar.gz
2.编译安装
    1.在下载目录进行解压
    tar -zxvf php-7.3.28.tar.gz
    2.进入解压包目录,这里完整目录名可以输入php后,点击tab按键快速自动补全
    cd php-7.3.28
    3.安装依赖
    yum install libxml2-devel sqlite-devel libcurl-devel oniguruma-devel libpng-devel libjpeg-devel freetype-devel libzip-devel openssl-devel -y
    设置编译参数。因为目录内含有configure文件,所以可进行编译操作,编译编译参考如下
    4.设置编译参数。因为目录内含有configure文件,所以可进行编译操作,编译编译参考如下
    ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mhash --with-openssl --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv --with-zlib --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-bcmath --enable-shmop --enable-sysvsem --enable-gd --with-jpeg --with-freetype --enable-mbregex --enable-mbstring --enable-ftp --enable-pcntl --enable-sockets --enable-soap --without-pear --with-gettext --enable-session --with-curl  --enable-opcache --enable-fpm --with-fpm-user=php --with-fpm-group=php --without-gdbm --enable-fast-install --disable-fileinfo
    5.编译安装,这个过程比较久,需要耐心等待。
    make && make install