準備寫一個網站, 用php好定node.js好?

本帖最後由 3ldk 於 2017-4-7 16:24 編輯

依個主題唔係要討論邊個language誰優誰劣依類爭論一百年都唔會完的問題

而係討論一些非常實際的問題

目前黎講, 兩隻language各遇到一個問題, 如果兩個問題都可以解決, 基本上用咩寫都無所謂

先講php(7以上)
依個網站會有一個sqlite db, 個db唔會update, readonly, 所以為左加速, 會使用sqlite的memory功能
睇過php係support sqlite memory功能
http://php.net/manual/en/ref.pdo-sqlite.connection.php

但只限create in memory, 唔可以copy from disk to memory
唔知php有無可能用現有db file行memory mode? (os係linux)



至於node.js
應該就無上面既問題, db會用sequelize, 見佢有memory option, 又可以比條file path
http://docs.sequelizejs.com/en/latest/api/sequelize/
但問題係node.js一個server只可以行一個網站

係apache, 如果一個server有兩個domain, 兩個網站的話, 有visual host可以解決
但node.js就無依樣野了
但係, 準備deploy果部server有9成機會係唔可以用reverse proxy
咁樣node.js有無可能在沒有reverse proxy的情況下, 容納幾個domain, 幾個網站?

依個主題唔係要討論邊個language誰優誰劣依類爭論一百年都唔會完的問題

而係討論一些非常實際的問題

目前 ...
3ldk 發表於 2017-4-7 16:22


node.js要同一部機run幾個網站, 係好痛苦既事(就算有得reverse proxy都係咁話)
通常都會玩一個docker/vm一個node.js web site

TOP

一個docker&LXC 一個node.js
這樣會好點VM 太食主資源

TOP

本帖最後由 hihihi123hk 於 2017-4-7 17:38 編輯
node.js要同一部機run幾個網站, 係好痛苦既事(就算有得reverse proxy都係咁話)
通常都會玩一個docker/vm ...
KinChungE 發表於 2017-4-7 16:36


   
用過 pm2 未?pm2 list 就見到哂開咗咩 Porcess / port

Nginx 簡單 proxy pass 就完,想知係有咩咁痛苦?

做得再好少少就用 docker 加 docker-pm2, 再限返每個 Process 嘅 CPU 同埋 Memory Limit

當然用 PHP 都可以用 Docker 限 CPU/ Memory 啦   

(個人感受:做唔到 CI + CD ,用 Docker 反而會拖慢自己,建議自己拎番個平衡吧)

via HKEPC Ionic Reader v1.6.0 - iPhone

TOP

用過 pm2 未?pm2 list 就見到哂開咗咩 Porcess / port

Nginx 簡單 proxy pass 就完,想知係有咩 ...
hihihi123hk 發表於 2017-4-7 17:34


淨係同一部機要裝幾套Node.JS已經煩
正常yum/apt裝會去左預設directory, 裝唔到第二套

唔似php咁, N個不同web app放埋同一htdocs, 一個web server搞掂哂, 亦唔需要預先諗邊套野要分多D RAM

另外, 樓主話唔要reverse proxy

TOP

淨係同一部機要裝幾套Node.JS已經煩
正常yum/apt裝會去左預設directory, 裝唔到第二套

唔似php咁, N個不 ...
KinChungE 發表於 2017-4-7 17:37


   
如果一早話一部機 Run 幾個 Node.js version 咁就清楚好多

via HKEPC Ionic Reader v1.6.0 - iPhone

TOP

如果一早話一部機 Run 幾個 Node.js version 咁就清楚好多  

via HKEPC Ionic Reader v1.6.0  ...
hihihi123hk 發表於 2017-4-7 17:40


現實上, 就算同一node js version, 都可能要唔同setting for唔同application
唔似apache + php咁, 又.htaccess又php.ini, 續個folder override咁方便

TOP

樓主「準備deploy果部server有9成機會係唔可以用reverse proxy」

有無特別原因?

用 Nodejs Best practice 係要用 Reverse proxy,例如同一個 Application 4個 Nodejs process, up stream 4 個 Private IP

就算唔用 RP, 如果部機本身有 Web server 霸咗 80 Port 嘅話,Nodejs process 根本搶唔到 80 Port

via HKEPC Ionic Reader v1.6.0 - iPhone

TOP

現實上, 就算同一node js version, 都可能要唔同setting for唔同application
唔似apache + php咁, 又.hta ...
KinChungE 發表於 2017-4-7 17:45


   
同意某程度上 PHP 係方便好多,但方便唔一定等如實用/應該要咁用

都喺嗰句,愈多人手 Config 就愈容易出錯    例如開 Folder 要搞 Permission, 大部份人用 FTP Deploy...

個人認為 Ops 要追求嘅野係要做 Multi-version、安全、可持續維護嘅伺服器,貪方便唔應該係考慮因素之一

但樓主話好大機會無得用 Reverse Proxy 咁連 Docker 都可以唔洗諗喇

諗到唯一解決方法,係租隻 External Load balancer, App Server 再 ip whitelist 番隻 LB, 咁就做乜都得喇

via HKEPC Ionic Reader v1.6.0 - iPhone

TOP

同意某程度上 PHP 係方便好多,但方便唔一定等如實用/應該要咁用

都喺嗰句,愈多人手 Config 就愈 ...
hihihi123hk 發表於 2017-4-7 18:05


而家做software梗係run左先, 得左先慢慢再諗點improve
乜都plan好哂先推出去已經遲左, 唔夠人快

TOP

相關文章