天天看點

阿裡雲Redis LUA腳本功能上線——輕量嵌入,極速擴充,業務輕松跨平台

    阿裡雲redis雲資料庫,全面支援lua腳本功能,助力企業輕松遷移自建redis資料庫的業務邏輯,實作業務的跨平台複用,快速驅動業務上雲。lua語言作為目前最流行的輕量級嵌入式腳本語言,憑借其文法簡單、高效穩定、支援複雜資料結構以及自動記憶體管理等特點,已經在衆多著名的遊戲程式中大量被使用,如:憤怒的小鳥、星際争霸、魔獸世界等。

阿裡雲Redis LUA腳本功能上線——輕量嵌入,極速擴充,業務輕松跨平台

<a href="https://www.aliyun.com/price/product?spm=5176.54432.203643.2.2uzpd1#/kvstore/detail">了解redis詳細配置及價格&gt;&gt;</a>

<b>redis支援lua腳本的主要優勢 </b>

<b></b>

    lua腳本的融合将使redis資料庫産生更多的使用場景,迸發更多新的優勢:

<b>高效性:</b>減少網絡開銷及時延,多次redis伺服器網絡請求的操作,使用lua腳本可以用一個請求完成

<b>資料可靠性:</b>redis會将整個腳本作為一個整體執行,中間不會被其他指令插入。

<b>複用性:</b>lua腳本執行後會永久存儲在redis伺服器端,其他用戶端可以直接複用

<b>便捷性:</b>實作程式熱更新

<b>可嵌入性:</b>可嵌入java,c#等多種程式設計語言,支援不同作業系統跨平台互動

<b>簡單強大:</b>小巧輕便,資源占用率低,支援過程化和對象化的程式設計語言

<b>免費開源:</b>遵循mit licence協定,可免費商用化

<b>redis lua腳本應用場景</b>

<b>遊戲開發:lua大量用于遊戲開發中,實作熱更新,提升應用擴充性</b>

<b>活躍使用者判斷:</b>判斷一個遊戲使用者是否屬于活躍使用者,如果符合标準,則活躍使用者人數+1

    lua腳本(sha: 089ccf077629d371793d5e928a3f06e9e483eb08)

    遊戲使用者示例資訊如下:

<b>簡單</b><b>ddos防護:</b>限制n秒内同ip的通路次數

     lua腳本(sha: 089ccf077629d371793d5e928a3f06e9e483eb08)

     示例資訊如下:10秒内192.168.1.1通路是否超過了5次

<b>使用者<b>遊戲社群</b>判斷</b>:判斷目前使用者是否在多個遊戲社群中

     lua腳本(sha:d7550c872f553141096d5134c027af5eeed283db)

      示例資訊如下:

<b>擷取遊戲商店中的貨品</b>:取出hash表中符合條件的對象

     lua腳本(sha:700c06c5ce9835bf9eef2198c8bc4d268b3b5095)

     示例資訊如下:取出所有在produce集合中的對象在hash表groceries中的值

<b><b></b></b>

<b><b>資料分析:</b>通過lua腳本實作資料格式化,提供給軟體平台通用接口能力</b>

實時平均值統計

     lua腳本(sha:399fddde578fd9cb924edce746c783e8340d8251)

     示例如下:

阿裡雲redis lua腳本安全保障

全局環境保護:阿裡雲redis對lua環境中的全局環境進行保護,禁止使用者添加全局變量到lua環境中

外部代碼防護:為了防止使用者從外部檔案引入不安全的代碼,阿裡雲redis不提供loadfile等函數

沙箱機制防護:阿裡雲redis lua不提供通路外部系統或者執行系統調用功能

開通功能限制:為保證使用者資料安全,阿裡雲redis 僅對申請使用者開通lua腳本功能,使用者可以通過工單開通