瀏覽分類:

程式設計

初探 Serverless AWS Lambda

一開始並沒有接觸到Serverless 這個詞,只有聽到AWS Lambda,所以就嘗試使用Lambda 做了微型服務,以下是我的履歷網站網址,最下方聯絡我的部分,就是利用AWS Lambda的服務。

https://resume.vnewin.com/

之前想說要換工作所以做了一個履歷資料網頁,想說讓面試人員可以認識我,簡單介紹一下自己,但跟朋友說要換工作換到現在,過一陣子了,最近終於跟主管說想離職休息一下!

說真的我朋友說我如果沒有遇到大事不會換工作,都不相信我會換,而且我也穩穩地在目前這份工作工作三年了!(這次我第一份工作)

但這一兩年實在很不順,人生方面不是工作,工作一直順順的,直到去年不小心出車禍,太可怕了讓我了解人類的渺小,讓我躺在家裡將近一個月,現在好多了,可能這一兩年真的非常不順,萌生下這個決定的想法,現在我也終於下定決心離職,看來我真的要出大事才會下定決心。

希望一切越來越好,離題了~今天來介紹我做的這一個小功能,履歷網站的聯絡我功能,順便介紹一下Serverless 先從以前開始說起。

我所知道的 主機到 Serverless

剛剛有提到我一開始接觸到這個AWS Lambda名詞,有點忘記哪一個講座了!第一次聽到覺得真的很新奇,AWS把雲端服務更抽象的出來。

以前可能要買一台伺服器主機,然後安裝需要的網站伺服器軟體、資料庫,如果開發PHP就要再裝PHP。

在往後一點,變成可以用租的,有專門公司在幫你顧伺服器,不管是虛擬的主機或是真實主機都由那間公司幫我們處理實體機器的部分。

近期演變到到雲端的部分,也是有虛擬機的技術,例如AWS的EC2,以上就是如何擁有可以運行的主機方法。

大流量架構

從每一台手機都能上網,網路也越來越方便,系統功能也越來越複雜的時代,分工越來越細用來應付這些大流量的情形。

資料庫

先以資料庫的方面來說,資料庫獨立安裝在一台伺服器,讓這一台伺服器的資源全部負責資料庫的運作,當然還有更細部的分工,比如說多一台機器只做讀取,另外一台只做寫入的動作,之間做同步的動作,甚至在資料庫前再加裝一層  Connection Pool 來排隊要進資料庫交易的連線。

不像我一開始學習時,所有服務都裝在同一台伺服器上。

閱讀更多
PostgreSQL LOGO

SQL 如何查詢以「,」分隔的陣列字串

現在有一個陣列 [1,2,3] 把它轉為字串利用「,」做分隔符號(“1,2,3”),並存入資料表中,該如何查詢?

PHP

$arr = array(1,2,3); //陣列
echo implode(",",$arr); // 輸出 字串 "1,2,3"

JavaScript

var array = [1,2,3];

console.log(array.join());
// 輸出 字串 "1,2,3"
閱讀更多

PHP isset()、empty()、is_null()的區別

這三個方法都是來判斷是否為空值或是有沒有宣告變數的方法,比較容易搞混的是 isset()、 empty() 。簡單整理一下這三個差異的筆記。

  • isset() 檢查的變數存不存在
  • empty()檢查的變數內的是否為空
  • is_null():檢查變數是否為null
閱讀更多
laravel

還原Git Server clone 回來的Laravel專案

最近很夯的PHP框架 Laravel 除了自己建 Laravel 專案以外,有時候也會 clone 回來專案, 完成後會發現無法執行。

因為Laravel 初始化就有 .gitignore檔案,你可以在根目錄找找看。因為 .gitignore 設定的原因,並沒有所有檔案都加入版本控制,所以抓下來後必須要有重建,整個專案才會運行。

閱讀更多

Laravel CSRF 排除部分功能

app/Http/VerifyCsrfToken.php

/**
 * The URIs that should be excluded from CSRF verification.
 *
 * @var array
 */
 protected $except = [
     //這裡填入相對應的網址
     'test/*'
 ];

如上方程式碼顯示,排除test 開頭的所有網址

LARAVEL 權限設定筆記

新建一個原則policy

php artisan make:policy PostPolicy -m Post

註冊policy

AuthServiceProvider.php檔案中有一個policies 屬性,將每一個實體對應到新建的原則。指定 Post 模型的原則是 PostPilicy 類別:
app/Providers/AuthServiceProvider.php

   /**
     * 應用程式的原則對應。
     *
     * @var array
     */
    protected $policies = [
        Post::class => PostPolicy::class,
    ];
閱讀更多

PHP 陣列處理常用函數

分割字串explode()

array explode ( string $delimiter , string $string [, int $limit = PHP_INT_MAX ] )
$str = "120.285848334481,23.089947547227";
$strArr = explode(",",$str);
echo $strArr;

閱讀更多