有很多模式,是为了做产品用的。 譬如事件,可以非常方便做扩展,因为可以在不改动原来代码的前提下插入代码。 如果系统做了是给自己公司用的,事件没啥作用,直接去那个地方改代码就行了,多高效。
最后,推荐一下我的开源商城:Fecshop。
Github地址:https://github.com/fancyecommerce/yii2_fecshop
Fecshop 全称为Fancy ECommerce Shop,是基于php Yii2框架之上开发的一款优秀的开源电商系统,遵循OSL3.0协议, Fecshop支持多语言,多货币,架构上支持pc,手机web,手机app,和erp对接等入口,您可以免费快速的定制和部署属于您的电商系统。
FecShop English Demo:http://fecshop.appfront.fancyecommerce.com/
FecShop 中文演示地址:http://fecshop.appfront.fancyecommerce.com/cn
FecShop QQ群:186604851 ,入群验证:fecshop
最后,推荐一下我的开源商城:Fecshop。
Github地址:https://github.com/fancyecommerce/yii2_fecshop
Fecshop 全称为Fancy ECommerce Shop,是基于php Yii2框架之上开发的一款优秀的开源电商系统,遵循OSL3.0协议, Fecshop支持多语言,多货币,架构上支持pc,手机web,手机app,和erp对接等入口,您可以免费快速的定制和部署属于您的电商系统。
FecShop English Demo:http://fecshop.appfront.fancyecommerce.com/
FecShop 中文演示地址:http://fecshop.appfront.fancyecommerce.com/cn
FecShop QQ群:186604851 ,入群验证:fecshop
最后,推荐一下我的开源商城:Fecshop。
Github地址:https://github.com/fancyecommerce/yii2_fecshop
Fecshop 全称为Fancy ECommerce Shop,是基于php Yii2框架之上开发的一款优秀的开源电商系统,遵循OSL3.0协议, Fecshop支持多语言,多货币,架构上支持pc,手机web,手机app,和erp对接等入口,您可以免费快速的定制和部署属于您的电商系统。
FecShop English Demo:http://fecshop.appfront.fancyecommerce.com/
FecShop 中文演示地址:http://fecshop.appfront.fancyecommerce.com/cn
FecShop QQ群:186604851 ,入群验证:fecshop
最后,推荐一下我的开源商城:Fecshop。
Github地址:https://github.com/fancyecommerce/yii2_fecshop
Fecshop 全称为Fancy ECommerce Shop,是基于php Yii2框架之上开发的一款优秀的开源电商系统,遵循OSL3.0协议, Fecshop支持多语言,多货币,架构上支持pc,手机web,手机app,和erp对接等入口,您可以免费快速的定制和部署属于您的电商系统。
FecShop English Demo:http://fecshop.appfront.fancyecommerce.com/
FecShop 中文演示地址:http://fecshop.appfront.fancyecommerce.com/cn
FecShop QQ群:186604851 ,入群验证:fecshop
最后,推荐一下我的开源商城:Fecshop。
Github地址:https://github.com/fancyecommerce/yii2_fecshop
Fecshop 全称为Fancy ECommerce Shop,是基于php Yii2框架之上开发的一款优秀的开源电商系统,遵循OSL3.0协议, Fecshop支持多语言,多货币,架构上支持pc,手机web,手机app,和erp对接等入口,您可以免费快速的定制和部署属于您的电商系统。
FecShop English Demo:http://fecshop.appfront.fancyecommerce.com/
FecShop 中文演示地址:http://fecshop.appfront.fancyecommerce.com/cn
FecShop QQ群:186604851 ,入群验证:fecshop
最后,推荐一下我的开源商城:Fecshop。
Github地址:https://github.com/fancyecommerce/yii2_fecshop
Fecshop 全称为Fancy ECommerce Shop,是基于php Yii2框架之上开发的一款优秀的开源电商系统,遵循OSL3.0协议, Fecshop支持多语言,多货币,架构上支持pc,手机web,手机app,和erp对接等入口,您可以免费快速的定制和部署属于您的电商系统。
FecShop English Demo:http://fecshop.appfront.fancyecommerce.com/
FecShop 中文演示地址:http://fecshop.appfront.fancyecommerce.com/cn
FecShop QQ群:186604851 ,入群验证:fecshop
最后可以参看网站https了,看我的示例,哈哈, https://fecshop.appfront.fancyecommerce.com/
lets encrypt证书有三个月的到期时间。可以自动renew,步骤如下:
官方资料:https://certbot.eff.org/docs/using.html?highlight=renew#renewing-certificates
1.改写到期更新时间
vim /etc/letsencrypt/renewal/fecshop.appfront.fancyecommerce.com.conf
fecshop.appfront.fancyecommerce.com.conf是您生成的名字,这个根据您自己域名,不是我的这个名字,打开这个文件, 将第一行的注释去掉,修改为89days
renew_before_expiry = 89 days
version = 0.13.0
89days代表,多少天之前算过期,证书过期时间为90天,如果我设置了89,那么第二天就需要renew了, 如果您设置了30天,那么就是2个月后需要renew,如果时间没到,renew会提示失败。
改好文件后,进入letsencrypt 文件夹,执行
./certbot-auto renew --force-renewal --pre-hook "/etc/init.d/nginx stop" --post-hook "/etc/init.d/nginx start"
--force-renewal
: 代表强制renew
--pre-hook
: 是nginx关闭的命令,因为renew需要关闭nginx
--post-hook
: 是nginx开启的命令,搞完证书后,开启nginx
自动续签可以使用crontab来完成,在linux中执行 crontab -e 添加代码:(www/web_logs/letsencry.log 为日志文件,您需要新建这个文件并设置可写)
06 06 * * * /www/web/test/lets/certbot-master/certbot-auto renew --force-renewal --pre-hook "/etc/init.d/nginx stop" --post-hook "/etc/init.d/nginx start" >> /www/web_logs/letsencry.log 2>&1
下面是我的日志:
[root@iZ942k2d5ezZ certbot-master]# ./certbot-auto renew --force-renewal --pre-hook "/etc/init.d/nginx stop" --post-hook "/etc/init.d/nginx start"
/root/.local/share/letsencrypt/lib/python2.6/site-packages/cryptography/__init__.py:26: DeprecationWarning: Python 2.6 is no longer supported by the Python core team, please upgrade your Python. A future version of cryptography will drop support for Python 2.6
DeprecationWarning
Saving debug log to /var/log/letsencrypt/letsencrypt.log
-------------------------------------------------------------------------------
Processing /etc/letsencrypt/renewal/fecshop.appfront.fancyecommerce.com.conf
-------------------------------------------------------------------------------
Running pre-hook command: /etc/init.d/nginx stop
Renewing an existing certificate
Performing the following challenges:
tls-sni-01 challenge for fecshop.appfront.fancyecommerce.com
tls-sni-01 challenge for fecshop.appfront.es.fancyecommerce.com
tls-sni-01 challenge for img.appfront.fancyecommerce.com
tls-sni-01 challenge for img.apphtml5.fancyecommerce.com
tls-sni-01 challenge for img.fancyecommerce.com
Waiting for verification...
Cleaning up challenges
Generating key (2048 bits): /etc/letsencrypt/keys/0003_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0003_csr-certbot.pem
-------------------------------------------------------------------------------
new certificate deployed without reload, fullchain is
/etc/letsencrypt/live/fecshop.appfront.fancyecommerce.com/fullchain.pem
-------------------------------------------------------------------------------
Congratulations, all renewals succeeded. The following certs have been renewed:
/etc/letsencrypt/live/fecshop.appfront.fancyecommerce.com/fullchain.pem (success)
Running post-hook command: /etc/init.d/nginx start
[root@iZ942k2d5ezZ certbot-master]#
@stoneyang
@forecho
我分享一下我的观点:
读写分离,yii2已经在架构层面解决了,我认为没有必要自己搞这些了。
2.用AR就可以了,损耗的那点性能,是php的,不是mysql的,无论你用那种方式,都不能提升mysql, 对于php损耗那点性能,基本可以忽略了,而且php在水平扩展非常容易。
3.对于服务层,我说一下我的理解
首先,MVC架构,在一些涉及到多表操作的复杂功能中力不从心,会造成controller很大,如果不写在controller中, 但是写到model又不合适,因为Amodel的代码不能写到Bmodel中去,这些需要加一个层,用来处理中间逻辑, 我感觉你说的服务层就是用来干这事,我认为这个层叫服务层不合适,在fecshop中我叫他block层(参考的magento的命名),block层 收集各个model的xx,进行处理,最终返回一个数组给controller。
对于服务层,我的观点是体现在多应用,譬如你的多个应用都需要用到一个底层逻辑,譬如你的手机端web,pc端web, 你的ios app 安卓app,等, 或者你是站群,有很多站都公用一套底层逻辑, 这个时候这套底层逻辑,称之为服务层更为妥当
以上是我个人的观点,只是说出来探讨理解。
我上面的结果结果为php5.4测试的。
如果用php5.5 支持 pasword_hash函数,就不会是上面的结果
password_hash
(PHP 5 >= 5.5.0, PHP 7)
password_hash — Creates a password hash
php 5.5 ,php7,我没有测试,有朋友测试过,也是很慢,具体多慢,我没有要到具体数据,大家可以自己测试试试。
顶一顶,:tw-1f300: :tw-1f301: :tw-1f302: :tw-1f303: :tw-1f304: :tw-1f306: :tw-1f307:
Yii2 Fecshop ,开源商城,github地址:https://github.com/fancyecommerce/yii2_fecshop
演示地址:http://fecshop.appfront.fancyecommerce.com/
截止到2016-11-12号,产品,分类,首页,评论,用户中心,搜索,多语言,多货币 等功能已经做完,除了购物车和支付部分,其他的基本都已经完成,关注fecshop的 在等2-3个月,也就是明年2,3月份,版本已经就可以出来,2017年4,5月份在把手机web 做一下,预计到明年5月份,后台,pc前台,手机web前台 ,命令控制台 这几个入口 基本可以完善,多谢大家关注和你们的Star,谢谢,我会坚持把他写好。
作者QQ:2358269014
Fecshop ,开源商城,github地址:https://github.com/fancyecommerce/yii2_fecshop
演示地址:http://fecshop.appfront.fancyecommerce.com/
截止到2016-11-12号,产品,分类,首页,评论,用户中心,搜索,多语言,多货币 等功能已经做完,除了购物车和支付部分,其他的基本都已经完成,关注fecshop的 在等2-3个月,也就是明年2,3月份,版本已经就可以出来,2017年4,5月份在把手机web 做一下,预计到明年5月份,后台,pc前台,手机web前台 ,命令控制台 这几个入口 基本可以完善,多谢大家关注和你们的Star,谢谢,我会坚持把他写好。
作者QQ:2358269014