做一個電商系統,做線上購物,網站做好了,只是一個開始,當人流進來了,商品熱賣,結果網站當機,商品沒真的賣出去,反而造成很大的客訴。
「系統承載量」是指你的網站系統,同時間最大可以承受多少的人流、多少的交易。老闆通常都會希望,承載量越大越好,千萬不要當機就好。
「請支援收銀」
在討論線上購物之前,先思考一下實體賣場是怎麼做的。
大賣場人太多的時候,結帳就會開始排隊,大家來賣場想買東西,結果想付錢卻塞車,排隊結帳太久,消費者就會不開心。為了讓結帳速度加快,通常大賣場的解決方式就是:加開櫃檯,來消化人流。
大家都在大賣場買過東西,我們都對這樣的場景都習以為常,所以很容易認為:如果網站交易的人變多了,交易變慢了,不是加開機器就好了嗎?
然而,網站的交易系統,絕對不是「請支援收銀」就可以解決的。如同賣場要加開櫃檯,就算人力夠,也要有足夠的空間來設立櫃檯,而賣場的空間,是在開店的時候就決定了。
開一間店能夠容納多少人,這是一個根本的架構問題。
蓋房子的架構問題
你想要蓋怎樣的房子?
如果要蓋的是茅草屋,可能找個親朋好友,可以一起DIY蓋出來。如果要蓋的是獨棟別墅,就會需要鋼筋水泥。如果要蓋的是20層樓的大樓,可能就需要到鋼骨架構。但如果要蓋的是101,那就需要更複雜的結構設計,而且還要多ㄧ顆阻尼球放在上頭。
越大的房子,需要更複雜的架構,當然就越貴。
同樣的,你想要怎樣的系統?
一個網站,一個可以交易的電商網站,一個可以承載100人交易的電商網站,到一個可以一分鐘承載10000人同時交易電商網站。架構方式都是不同的。
也就是說,架構會決定了你可以有多大的房子,架構會決定了你的系統可以有多大的承載量,也就是架構決定了可以有多少的人可以同時交易。
開店的數學問題
所以,你需要多大的店面?需要多少個結帳櫃檯?
人流越多的商圈,我們都希望有更大的店面,更多的櫃檯。但店面越大、櫃檯越多,各方面的成本就越高、也需要雇用更多的人力。但但但,都準備好了,結果都沒有人進來逛的話,怎麼辦呢?
關鍵絕對不是店面越大越好,關鍵是「坪效」。
店面不大,卻可以做很大的生意,投資報酬率才是重點。也就是同樣花了一千元的成本,有人可以做一萬元的生意,有人卻可以做十萬元的生意。高成本效益(ROI)才是生意成功的關鍵。
所以如果我們先準備了一個架構上可以承載10,000人同時交易的網站,但每天卻只有不到100人來逛,是非常不符合成本效益的。這就像花了大錢蓋了101,裡面卻沒有人一樣,便成了蚊子館,商業上是會賠錢倒店的。
系統承載量的營運問題
系統承載量的最佳解答,是隨著人流的增加、交易量的增加,然後逐漸增加你的系統承載量。譬如說,今年人流估計最大會有一分鐘800人,就先準備一個1,000人的承載量的系統就可以了。而明年,可能會有2000人,再準備到 3,000 人。
也就是說,隨著業績的成長,不停的改系統架構。