鍍金池/ 問(wèn)答/ PHP問(wèn)答

如果把root和index 兩行 放到 location / 里面 證書(shū)就是綠色的,沒(méi)問(wèn)題, 如果把root和index 放到 ocation /外面 證書(shū)就不灰色的,就不行了
圖片描述

圖片描述

黑與白 回答

tp默認(rèn)緩存文件,如果你想取消緩存則
在你的配置文件config.php文件中加上如下兩句:
'TMPL_CACHE_ON' => false,//禁止模板編譯緩存
'HTML_CACHE_ON' => false,//禁止靜態(tài)緩存
'ACTION_CACHE_ON' => false,

時(shí)序問(wèn)題吧,你得模擬正常登錄流程,先get訪問(wèn)一下登錄頁(yè),獲取到cookie,然后再獲取驗(yàn)證碼,最后提交

愿如初 回答

個(gè)人一些看法:(什么語(yǔ)言都差不多的,我這邊是Java的)

省略前頭的部分內(nèi)容,畢竟是比較簡(jiǎn)單的演化過(guò)程

我們將session做成一個(gè)session服務(wù)器,browser1通過(guò)負(fù)載均衡請(qǐng)求服務(wù)器,服務(wù)器將session信息存儲(chǔ)到session服務(wù)器中,當(dāng)想要獲取時(shí)就反向進(jìn)行。(缺點(diǎn):目前session Server是單點(diǎn)的,如何解決單點(diǎn),保證可用性)

圖片描述

我們可以將Session Server也做成集群,其適合用于Session數(shù)量與web服務(wù)數(shù)量大的情況下,更改架構(gòu)后,也要修改應(yīng)用存儲(chǔ)session的業(yè)務(wù)邏輯。

接下來(lái)我們?cè)倏纯磾?shù)據(jù)庫(kù),讀寫(xiě)都要經(jīng)過(guò)數(shù)據(jù)庫(kù),當(dāng)用戶量達(dá)到一定量時(shí),數(shù)據(jù)庫(kù)又將成為一個(gè)瓶頸,則我們將如何解決?我們可以使用數(shù)據(jù)庫(kù)的讀寫(xiě)分離,主從庫(kù),并通過(guò)統(tǒng)一的數(shù)據(jù)訪問(wèn)模型進(jìn)行訪問(wèn),將所有讀操作引入到Slave服務(wù)器,將寫(xiě)操作引入到主庫(kù)當(dāng)中,由于數(shù)據(jù)庫(kù)讀寫(xiě)分離,所以應(yīng)用程序也要有相應(yīng)的變化,使用數(shù)據(jù)訪問(wèn)模塊讓?xiě)?yīng)用程序開(kāi)發(fā)人員不用理會(huì)讀寫(xiě)分離的存在,這樣多數(shù)據(jù)源讀寫(xiě)代碼對(duì)我們的業(yè)務(wù)就沒(méi)有了侵入(代碼層的演變,如何支持多數(shù)據(jù)源、如何封裝對(duì)業(yè)務(wù)沒(méi)有侵入、如何使用現(xiàn)用的ORM框架實(shí)現(xiàn)數(shù)據(jù)讀寫(xiě)分離、是否更換ORM、其優(yōu)缺點(diǎn)?)

圖片描述

當(dāng)我們?cè)L問(wèn)過(guò)大,I/O過(guò)大,我們數(shù)據(jù)的讀寫(xiě)分離又將遇到這幾個(gè)問(wèn)題,主從庫(kù)復(fù)制時(shí)是否延遲(分機(jī)房部署、跨機(jī)房傳輸),應(yīng)用對(duì)于數(shù)據(jù)源的路由問(wèn)題,接著我們?yōu)榱颂岣叻?wù)器,增加了CND和反向代理服務(wù)器,使用CDN可以解決不同地方訪問(wèn)速度問(wèn)題、反向代理可以在機(jī)房中緩存用戶的資源。

圖片描述

這時(shí)文件服務(wù)器又出現(xiàn)了瓶頸,我們將文件服務(wù)器改為分布式文件服務(wù)器集群,我們要考慮到:如何不影響線上的業(yè)務(wù)訪問(wèn),是否需要業(yè)務(wù)部門(mén)幫忙清理數(shù)據(jù),是否需要備份服務(wù)器,是否需要重新做域名解析。
圖片描述
這時(shí)我們的數(shù)據(jù)庫(kù)又出現(xiàn)了新的瓶頸,我們選擇專庫(kù)專用的方式,進(jìn)行數(shù)據(jù)庫(kù)的垂直拆分,可以解決寫(xiě)數(shù)據(jù)、并發(fā)、量大的問(wèn)題,分庫(kù)后又將帶來(lái)一些新的問(wèn)題:跨業(yè)務(wù)的事務(wù)(分布式事務(wù))

圖片描述

當(dāng)某個(gè)數(shù)據(jù)的訪問(wèn)量、數(shù)據(jù)量、日志等過(guò)大達(dá)到瓶頸時(shí),這時(shí)我們就要進(jìn)行數(shù)據(jù)庫(kù)的水平拆分,我們將User拆分成Users1和Users2,水平拆分即將同一個(gè)數(shù)據(jù)表的數(shù)據(jù)拆分到兩個(gè)數(shù)據(jù)庫(kù)當(dāng)中,這時(shí)我們就解決了單數(shù)據(jù)庫(kù)的瓶頸。
圖片描述
水平拆分后,SQL路由出現(xiàn)一些問(wèn)題,假設(shè)我們想知道某個(gè)用戶是存在Users1還是Users2中,且由于分庫(kù),主鍵的策略也將有所不同,同時(shí)也將面臨一個(gè)分頁(yè)的問(wèn)題(后臺(tái)管理系統(tǒng)在進(jìn)行展示時(shí)還要考慮分頁(yè)的問(wèn)題),當(dāng)完成后,我們又發(fā)現(xiàn)應(yīng)用服務(wù)器的搜索量上升,這時(shí)我們將應(yīng)用服務(wù)器的搜索功能提取出來(lái)做成搜索引擎,同時(shí)部分場(chǎng)景使用NoSQL提高性能,

圖片描述

當(dāng)然以上架構(gòu)還存在部分問(wèn)題,如負(fù)載均衡服務(wù)器是單點(diǎn),因此也可以將負(fù)載均衡服務(wù)器做成集群,進(jìn)行主從的熱備,同時(shí)做一個(gè)自動(dòng)切換的解決方案。

過(guò)程中:安全性、數(shù)據(jù)分析、監(jiān)控、反作弊........
繼續(xù)發(fā)展:SOA架構(gòu)、服務(wù)化、消息隊(duì)列、任務(wù)調(diào)度、多機(jī)房........

厭惡我 回答

es6的object.values方法,直接轉(zhuǎn)換成數(shù)組

舊言 回答

hanging-punctuation好像可以控制,沒(méi)測(cè)試過(guò),不過(guò)除了mac并不兼容所以沒(méi)什么意義
非要滿格顯示有個(gè)取巧的辦法是用text-align: justify;,但是可能還不如默認(rèn)的美觀

懶豬 回答

與其這樣,不如把自增的ID,改成自定義的ID。比如可以用 redis 的inc生成自增ID。

喵小咪 回答
  1. 使用unique,有更多要求可以擴(kuò)展 https://d.laravel-china.org/d...
  2. \Illuminate\Validation\Validator
安淺陌 回答

對(duì)數(shù)據(jù)庫(kù)操作,放著數(shù)據(jù)庫(kù)自己的鎖不用去用文件鎖,這是什么道理

file_put_contents 沒(méi)有文件就創(chuàng)建前提是 你資源路徑得存在,并且有權(quán)限,路徑不存在的話 就是報(bào)這個(gè)錯(cuò)誤

凝雅 回答

你直接打開(kāi)設(shè)置,然后搜索resolve就行,就會(huì)出來(lái)設(shè)置選項(xiàng)

你這可以直接用excel打開(kāi)了。csv格式就是用逗號(hào)分割的。
而且,不同系統(tǒng)對(duì)字符的寬度計(jì)算是不一致的。相同系統(tǒng),不同字體的字符寬度也不一致。

絯孑氣 回答

“卡住”沒(méi)有把問(wèn)題描述清楚,也無(wú)法腦補(bǔ)你遇到的卡住是個(gè)什么現(xiàn)象。

  • curl_exec() 是在什么模式下執(zhí)行的。CLI? FPM?
  • curl的超時(shí)時(shí)間設(shè)置的是多少?
  • php.ini里涉及到超時(shí)時(shí)間的設(shè)置,分別設(shè)置到多長(zhǎng)?
  • Web服務(wù)器(如果使用了)執(zhí)行請(qǐng)求的超時(shí)時(shí)間是多少?
葬憶 回答

你不會(huì)是在一臺(tái)電腦上既安裝了vmware又安裝了virtualbox?

心上人 回答

下面的是我截圖的源碼

clipboard.png
你在你的程序使用

dd(JWTFactory::getTTL());

看一下你的程序的ttl是多少。
還有,我的ttl使用分鐘來(lái)算的,但也有可能我們用的庫(kù)不一樣,你要確保你的過(guò)期時(shí)間也是用分鐘來(lái)計(jì)算的,也是有可能用秒來(lái)計(jì)算的

下面是可能導(dǎo)致token過(guò)期的兩個(gè)函數(shù)

clipboard.png

乖乖瀦 回答

當(dāng)嘗試以調(diào)用函數(shù)的方式調(diào)用一個(gè)對(duì)象時(shí),__invoke() 方法會(huì)被自動(dòng)調(diào)用。

PHP 魔術(shù)方法提供了這樣的功能,引用官方例子:

<?php
class CallableClass 
{
    function __invoke($x) {
        var_dump($x);
    }
}
$obj = new CallableClass;
$obj(5); // 輸出:int(5)
var_dump(is_callable($obj)); // 輸出:true

參考:__invoke 魔術(shù)方法

陪我終 回答

我覺(jué)得git rebase --help就已經(jīng)解答了你的疑惑