最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解全棧開發(fā)Vercel數(shù)據(jù)庫存儲服務(wù)

 更新時間:2023年05月04日 16:06:44   作者:狂奔滴小馬  
這篇文章主要為大家介紹了全棧開發(fā)Vercel數(shù)據(jù)庫存儲服務(wù)功能使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

正文

Vercel 是一個流行的 React.js、Next.js 等前端應(yīng)用部署平臺,我們可以一鍵將 Github 上的應(yīng)用部署上線,但它缺少一個重要部分:數(shù)據(jù)庫。不過現(xiàn)在已經(jīng)有了四種新數(shù)據(jù)庫可供選擇。

數(shù)據(jù)是 Web 應(yīng)用中不可或缺的一部分,在這之前我們可以配合使用 Heroku 的數(shù)據(jù)庫服務(wù),但后來 Heroku 收費,不再提供免費的數(shù)據(jù)庫,社區(qū)中也一直尋找免費試用的數(shù)據(jù)庫方案,現(xiàn)在我們可以直接選擇 Vercel 來上線一個動態(tài)網(wǎng)站, 并且使用 JavaScript 和 TypeScript 框架服務(wù)端渲染實時數(shù)據(jù)會比以往任何時候都更容易。

5 月 1 日,Vercel 宣布一套 serverless 存儲解決方案現(xiàn)已在 Vercel 上可用,是由業(yè)內(nèi)一些最佳基礎(chǔ)設(shè)施提供商提供支持。

  • Vercel KV:一種簡單耐用的 serverless Redis 解決方案,由 Upstash 提供支持
  • Vercel Postgres:為前端構(gòu)建的 serverless SQL 數(shù)據(jù)庫,由 Neon 提供支持
  • Vercel Blob:一種在邊緣上傳、提供文件對象存儲的解決方案,由 Cloudflare R2 提供支持

Vercel KV:持久的 Redis 數(shù)據(jù)庫

它是一種基于 Upstash E-Value 的鍵值存儲(類似 Redis)。操作數(shù)據(jù)庫非常容易,更重要的是它非??焖?,因為與大多數(shù)數(shù)據(jù)庫不同,數(shù)據(jù)保存在內(nèi)存中而不是磁盤上, 這意味著它可用于持久化狀態(tài),而不會在服務(wù)器崩潰時丟失數(shù)據(jù),也就是說,在讀取方面會變得極其迅速,是緩存數(shù)據(jù)的理想選擇。

使用示例

import kv from '@vercel/kv';
export async function getPrefs() {
  const prefs = await kv.get('prefs');
  return prefs || {};
}
export async function updatePrefs(prefs: Record<string, string>) {
 return kv.set('prefs', prefs);
}

價格

在 2023 年 6 月 1 日之前,不會因超過基本限制的按需使用而被收取費用。

  • Hobby 免費用戶,每天的請求限制為 3000 次, 存儲 256 MB。
  • Pro 用戶 512 MB - 超出 1GB/$0.20 當(dāng)達到此限制時,對數(shù)據(jù)庫的請求將受到速率限制。

Vercel Postgres:讓復(fù)雜數(shù)據(jù)變得簡單

PostgreSQL 是許多開發(fā)人員處理關(guān)系數(shù)據(jù)的首選方式。這個數(shù)據(jù)庫好處在于它可以自動擴展、容錯性強,并且有一個易于使用的 UI 界面?;旧夏阒恍枰c擊一個按鈕,就可以將你的數(shù)據(jù)庫連接鏈接添加到環(huán)境中,然后就可以直接在 React Server Component 中編寫原始 SQL 代碼了。

使用示例

import { sql } from '@vercel/postgres';
import { redirect } from 'next/navigation';
async function create(formData: FormData) {
  'use server';
  const { rows } = await sql`
    INSERT INTO products (name)
    VALUES (${formData.get('name')})
  `;
  redirect(`/product/${rows[0].slug}`);
}
export default function Page() {
  return (
    <form action={create}>
      <input type="text" name="name" />
      <button type="submit">Submit</button>
    </form>
  );
}

我們可以使用 Vercel Postgres 直接在 React 服務(wù)器組件內(nèi)查詢、插入、更新或刪除數(shù)據(jù),以靜態(tài)的速度在服務(wù)器上渲染動態(tài)內(nèi)容,并且大大減少客戶端 JavaScript 代碼

此外,它還與 Keisely 和我個人最喜歡的 Prisma ORM 庫良好地集成。

價格

  • 免費用戶,每月的計算時間 60 hours,存儲 256 MB。
  • Pro 用戶, 每月的計算時間 100 hours 存儲 512 MB, 超出 1GB/$0.30 當(dāng)達到此限制時,對數(shù)據(jù)庫的請求將受到速率限制。

Hobby 默認(rèn)免費使用,當(dāng)您接近使用限制時,Vercel 會向您發(fā)送電子郵件。不會為任何額外的使用付費,我們可以選擇:

  • 30 天后過期
  • 升級到 Pro

Vercel Blob:文件對象存儲

Vercel Blob 是一種用于在云中存儲文件的快速、簡單且高效的解決方案。它提供了一個完全基于 Web 標(biāo)準(zhǔn)構(gòu)建的輕松而強大的存儲 API,無需配置存儲桶或?qū)嵤┓敝氐?SDK。目前需要申請使用。

使用示例

import { put } from '@vercel/blob';
export const runtime = 'edge';
export async function PUT(request: Request) {
  const { url } = await put('avatars/user-12345.png', request.body, { access: 'public' });
  return Response.json({ url });
}

它基于 Cloudflare R2 并允許你將大量非結(jié)構(gòu)化數(shù)據(jù)(如圖像和 PDF 文件)存儲在云上。換句話說,它可以替代 S3 等存儲桶。SDK 非常簡單——只需調(diào)用 put 方法并傳入要上傳的文件即可返回下載 URL 。但目前存在一個限制:最大文件上傳大小為 4MB ,在測試版階段之后應(yīng)該會增加。

Edge Config

它是一種全局?jǐn)?shù)據(jù)存儲,使您能夠在邊緣讀取數(shù)據(jù),而無需查詢外部數(shù)據(jù)庫或訪問上游服務(wù)器。大多數(shù)查找在不到 1ms 的時間內(nèi)返回,99%的讀取將在 10ms 以下返回。

使用示例

import { NextResponse, NextRequest } from "next/server";
import { get } from "@vercel/edge-config";
export async function middleware(request: NextRequest) {
  if (await get("showNewDashboard")) {
    return NextResponse.rewrite(new URL("/new-dashboard", request.url));
  }
}

使用場景

  • 以超低延遲獲取數(shù)據(jù)。例如,你應(yīng)該將功能標(biāo)志開關(guān)存儲在 Edge Config 存儲中
  • 存儲經(jīng)常讀取但很少更改的數(shù)據(jù)。例如,您應(yīng)該將關(guān)鍵重定向 URL 存儲在 Edge Config 存儲中
  • 讀取每個區(qū)域中的數(shù)據(jù)。Edge Config 數(shù)據(jù)被主動復(fù)制到 Vercel 邊緣網(wǎng)絡(luò)中的所有區(qū)域

小結(jié)

筆者認(rèn)為,隨著框架從單一架構(gòu)轉(zhuǎn)向可組合架構(gòu),框架正在向服務(wù)端渲染優(yōu)先轉(zhuǎn)變。這種轉(zhuǎn)變以 React Server Component 和將流式渲染為例。后端和數(shù)據(jù)庫的選擇并不缺乏。但對于新項目來說,選擇仍然會讓人無從下手,雖然 Vercel 的價格可能會高于其他服務(wù)商,但對于個人或者全棧的體驗項目來說無疑是最好的選擇。

以上就是詳解全棧開發(fā)Vercel數(shù)據(jù)庫存儲服務(wù)的詳細內(nèi)容,更多關(guān)于全棧Vercel數(shù)據(jù)庫存儲的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 親自教你TypeScript 項目搭建過程

    親自教你TypeScript 項目搭建過程

    這篇文章主要介紹了親自教你TypeScript 項目搭建過程,我記得前一天,我們配置過一份 webpack 配置,直接復(fù)制過來使用,這里就不多說了,然后就是在項目中引入我們的 less,需要的朋友可以參考下
    2022-11-11
  • JS設(shè)置手機驗證碼60s等待實現(xiàn)代碼

    JS設(shè)置手機驗證碼60s等待實現(xiàn)代碼

    本文給大家分享JS設(shè)置手機驗證碼60s等待實現(xiàn)代碼,需要的朋友參考下吧
    2017-06-06
  • javascript 容錯處理代碼(屏蔽js錯誤)

    javascript 容錯處理代碼(屏蔽js錯誤)

    有時候大家來瀏覽網(wǎng)頁的時候發(fā)現(xiàn)IE瀏覽器左下角總有個黃色錯誤標(biāo)志,有時候更是直接彈出錯誤無法繼續(xù)瀏覽頁面,這樣對于網(wǎng)站的正規(guī)性與權(quán)威性發(fā)展不利。
    2010-04-04
  • js中的面向?qū)ο笾畬ο蟪R妱?chuàng)建方法詳解

    js中的面向?qū)ο笾畬ο蟪R妱?chuàng)建方法詳解

    這篇文章主要介紹了js中的面向?qū)ο笾畬ο蟪R妱?chuàng)建方法,結(jié)合實例形式較為詳細的分析了JavaScript創(chuàng)建對象的四種常用方式,需要的朋友可以參考下
    2019-12-12
  • JS常見加解密算法小結(jié)

    JS常見加解密算法小結(jié)

    在Web開發(fā)中,保護用戶數(shù)據(jù)是至關(guān)重要的,而對數(shù)據(jù)進行加密是其中一種有效手段,本文將深入淺出地介紹常見的加解密算法,包括消息摘要算法、對稱加密算法以及非對稱加密算法,需要的朋友可以參考下
    2023-12-12
  • 微信小程序開發(fā)中的疑問解答匯總

    微信小程序開發(fā)中的疑問解答匯總

    這篇文章主要給大家總結(jié)了關(guān)于微信小程序開發(fā)中的各種疑問解答,文中將在微信小程序開發(fā)中可能遇到的問題都進行了整理和解答,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-07-07
  • Cropper.js進階實現(xiàn)圖片旋轉(zhuǎn)裁剪處理功能示例

    Cropper.js進階實現(xiàn)圖片旋轉(zhuǎn)裁剪處理功能示例

    這篇文章主要為大家介紹了Cropper.js進階實現(xiàn)圖片旋轉(zhuǎn)裁剪功能示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • 基于JavaScript實現(xiàn)帶縮略圖的輪播效果

    基于JavaScript實現(xiàn)帶縮略圖的輪播效果

    這篇文章主要為大家詳細介紹了基于JavaScript實現(xiàn)帶縮略圖的輪播效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • JS+CSS實現(xiàn)簡單滑動門(滑動菜單)效果

    JS+CSS實現(xiàn)簡單滑動門(滑動菜單)效果

    這篇文章主要介紹了JS+CSS實現(xiàn)簡單滑動門(滑動菜單)效果,通過JavaScript響應(yīng)鼠標(biāo)事件動態(tài)設(shè)置頁面元素樣式實現(xiàn)滑動菜單功能,需要的朋友可以參考下
    2015-09-09
  • JavaScript操作XML文件之XML讀取方法

    JavaScript操作XML文件之XML讀取方法

    這篇文章主要介紹了JavaScript操作XML文件之XML讀取方法,涉及javascript操作XML文件的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06

最新評論

宁都县| 饶阳县| 潍坊市| 临湘市| 集安市| 晋城| 大同县| 那曲县| 汉源县| 禹州市| 阿合奇县| 富裕县| 玉门市| 延安市| 尤溪县| 札达县| 三门峡市| 大厂| 论坛| 佛坪县| 石河子市| 镇江市| 洛浦县| 祁连县| 洪雅县| 钟山县| 方山县| 晋中市| 东至县| 东山县| 阿坝| 桐庐县| 乌拉特后旗| 满洲里市| 津市市| 和政县| 和田市| 扎兰屯市| 永胜县| 普定县| 中宁县|