作者文章

fwq

FWQ
服务器教程
php7的安装以及编译中的错误
1、下载地址:http://idc.net/downloads.php 2、configure的配置如下: ./configure –prefix=/usr/local/php7 -with-config-file-path=/usr/local/php7/etc -with-mcrypt=/usr/local/libmcrypt -with-mysqli=mysqlnd -with-pdo-mysql=mysqlnd -with-gd -with-iconv -with-zlib -enable-xml -enable-bcmath -enable-shmop -enable-sysvsem -enable-inline-optimization -enable-mbregex -enable-fpm -enable-mbstring -enable-ftp -enable-gd-native-ttf -with-openssl -enable-pcntl -enable-sockets -with-xmlrpc -enable-zip -enable-soap -without-pear…
2024-11-24 阅读全文 →
FWQ
服务器教程
PHP7中的MongoDB\Driver\Manager
这个MongoDB中的操作入口类,包括了连接MongoDB服务器、write、query的操作. final public MongoDB\Driver\Manager::__construct ( string $uri [, array $options [, array $driverOptions ]] ) 构造函数,连接MongoDB,连接方式有很多种 # 连接表达式 mongodb://[username:password@]host1[:port1][,host2[:port2],.. .[,hostN[:portN]]][/[database][?options]] final public MongoDB\Driver\WriteResult MongoDB\Driver\Manager::executeBulkWrite ( string $namespace ,…
2024-11-24 阅读全文 →
FWQ
服务器教程
PHP7中的MongoDB\Driver\WriteConcern
这个是个对mongodb的写入性能、以及确保数据一致性的控制设置,非常重要的一个类 1、final public MongoDB\Driver\WriteConcern::__construct ( string|int $w [, integer $wtimeout [, boolean $journal ]] ) 参数:$w 1:默认的writeConcern,数据写入到Primary就向客户端发送确认 0:对客户端的写入不需要发送任何确认,适用于性能要求高,但不关注正确性的场景 majority:数据写入到副本集大多数成员后向客户端发送确认,适用于对数据安全性要求比较高的场景,该选项会降低写入性能 $journal:默认为”{j: false},如果要求Primary写入持久化了才向客户端确认,则指定该选项为true $wtimeout:写入超时时间,仅$w的值大于1时有效 当指定{w: }时,数据需要成功写入number个节点才算成功,如果写入过程中有节点故障,可能导致这个条件一直不能满足,从而一直不能向客户端发送确认结果,针对这种情况,客户端可设置wtimeout选项来指定超时时间,当写入过程持续超过该时间仍未结束,则认为写入失败。 2、final public object MongoDB\Driver\WriteConcern::bsonSerialize…
2024-11-24 阅读全文 →
FWQ
服务器教程
PHP7中的MongoDB\Driver\WriteConcern
这个是个对mongodb的写入性能、以及确保数据一致性的控制设置,非常重要的一个类 1、final public MongoDB\Driver\WriteConcern::__construct ( string|int $w [, integer $wtimeout [, boolean $journal ]] ) 参数:$w 1:默认的writeConcern,数据写入到Primary就向客户端发送确认 0:对客户端的写入不需要发送任何确认,适用于性能要求高,但不关注正确性的场景 majority:数据写入到副本集大多数成员后向客户端发送确认,适用于对数据安全性要求比较高的场景,该选项会降低写入性能 $journal:默认为”{j: false},如果要求Primary写入持久化了才向客户端确认,则指定该选项为true $wtimeout:写入超时时间,仅$w的值大于1时有效 当指定{w: }时,数据需要成功写入number个节点才算成功,如果写入过程中有节点故障,可能导致这个条件一直不能满足,从而一直不能向客户端发送确认结果,针对这种情况,客户端可设置wtimeout选项来指定超时时间,当写入过程持续超过该时间仍未结束,则认为写入失败。 2、final public object MongoDB\Driver\WriteConcern::bsonSerialize…
2024-11-24 阅读全文 →
FWQ
网站开发
PHP7中的MongoDB\Driver\Query
这个类可以理解为是对query操作的描述. final public MongoDB\Driver\Query::__construct ( array|object $filter [, array $queryOptions ] ) $filter:支持mongodb官方的所有查询操作, 详见:https://docs.mongodb.com/manual/tutorial/query-documents/   $queryOptions的详解 allowPartialResults:是否返回部分结果,例如集群中方某个 shards宕机后,返回部分结果。如果未指定将返回错误。
2024-11-24 阅读全文 →
FWQ
Docker教程
PHP中使用composer自动加载
关于php自动加载的由来,这篇文章说的很详细。 官方网站:https://getcomposer.org/ 中文站:http://docs.phpcomposer.com 1、安装composer 下载:https://getcomposer.org/download/ 执行:curl -o https://getcomposer.org/composer.phar # mv omposer.phar /usr/local/bin/composer # chmod 755 /usr/local/bin/composer //务必将文件权限更改成755
2024-11-24 阅读全文 →
FWQ
Docker教程
Mongodb中的readConcern 与 readPreference的区别与原理
在这一篇文章提到,readPreference有5种策略: primary 只从 primary 节点读数据,这个是默认设置 primaryPreferred 优先从 primary 读取,primary 不可服务, 从 secondary 读 secondary 只从 scondary 节点读数据 secondaryPreferred 优先从 secondary 读取,没有 secondary 成员时, 从 primary 读取 nearest 根据网络距离就近读取…
2024-11-24 阅读全文 →
FWQ
Docker教程
MongoDB查询以及投影操作符的实践
1、比较操作符号 比较查询操作符符则有两类,一类是大于($gt、$gte)、小于($lt、$lte)、等于($eq、$ne)这种2值比较,一类是是否与数组内元素匹配($in、$nin)。当数值型数据进行比较时,MongoDB会先转换再进行比较。 $gt:greater than $gte:greater than equal $lt:less than $lte:less than equal $eq:equal $ne:not equal $in:in $nin:not in   2. 逻辑操作符 逻辑查询操作符有4种,分别是:与($and)、或($or)、非($not)以及或非($nor)逻辑。$and、$or、$nor后接大括号来框住的所接受的条件。而$not的使用有点不同,需要在指定字段之后,可以匹配后接的子条件以及该字段不存在的情况。 3. 元素操作符 元素选择器中$exists就是来选择指定字段存在数值的文档,$type则是选择字段的数值类型为指定类型,BSON当中的数据类型都有相应的数字来表示,这种类型数字就是在这里使用了。 4. 数组操作符 这3种针对数据选择的操作器如字面意思理解就可以了。需要注意几点就是:$all相当于$and…
2024-11-24 阅读全文 →
FWQ
Docker教程
PSR规范标准
是PHP Standard Recommendation的简写,它其实应该叫PSRs,即系列推荐标准:目前通过的规范有PSR-0(Autoloading Standard)、PSR-1(Basic Coding Standard)、PSR-2(Coding Style Guide)、PSR-3(Logger Interface)、PSR-4(Improved Autoloading)。它不是PHP官方标准,而是从如Zend、Symfony2等知名PHP项目中提炼出来的一系列标准,目前有越来有多的社区项目加入成员并遵循该标准。 PHP-FIG — PHP Framework Interoperability Group, 是制定PSRs开发规范的组织,它的成员由很多知名PHP社区项目组成,在其官网首页下方可以看到成员清单。这些成员制定规范,并且落实在自己的项目中。 必须(MUST),不可(MUST NOT),建议(SHOULD),不建议(SHOULD NOT),可以/可能(MAY) 1、命令空间规范 PSR-0 一个完全标准的命名空间(namespace)和类(class)的结构是这样的:\<Vendor Name>\(<Namespace>\)*<Class Name> 每个命名空间(namespace)都必须有一个顶级的空间名(namespace)(“组织名(Vendor Name)”)。 每个命名空间(namespace)中可以根据需要使用任意数量的子命名空间(sub-namespace)。…
2024-11-24 阅读全文 →