Para是可擴展的多端后端服務器/框架,用於對象持久性和檢索。它可以通過照顧後端操作來幫助您更快地構建和原型應用程序。它可以是您基於JVM的應用程序的一部分,也可以將其部署為獨立的,具有多個應用程序的多端API服務器,並且可以連接到它。
保加利亞語中的“帕拉”這個名字的意思是“蒸汽”。就像Steam用於為產品提供動力一樣,您可以使用Para為您的移動或Web應用程序提供動力。
請參閱PARA與其他開源後端框架的比較。
該項目由一家獨立的自舉公司Erudika充分資助和支持。
DAO本地實施)+-----------------------------------------------------------------------------+
| ____ ___ _ ____ ___ _ _ |
| / __ / __` / ___ / __` / |
| / / _ / / / _ / / / / / _ / / |
| / .___/ __,_/ _/ _/ __,_/ +-----------------------------------------------------------------
| / _/ |持久性|
+-------------------+ +-----------------+ +-------------+
| REST API | |搜索| --- |緩存|
+-----------+----------+ - +--------+---------+---+----+------+-------+
| | |
+----------+-----------++--------+----------++-------+-------+
|簽名請求| |搜索索引| |數據存儲|
|和JWT令牌| | (任何)| | (任何)|
+----+------------^----++------------------------+-------------------------------+
| |
+---- V ---------+-----------------------------------------------------------------+
|客戶:JavaScript,PHP,Java,C#,Android,IOS等。 |
+-----------------------------------------------------------------------------+
我們在Paraio.com上提供託管和高級支持,您可以在其中使用免費開發人員帳戶在線嘗試Para。瀏覽並管理您的用戶和對象,進行備份並在Web控制台中單擊幾下編輯權限。通過升級到高級帳戶,您將能夠在幾秒鐘內上下擴展項目並管理多個應用程序。
application.conf文件。java -jar -Dconfig.file=./application.conf para-*.jarnpm install -g para-cli Para CLI # run setup and set endpoint to either 'http://localhost:8080' or 'https://paraio.com'
# the keys for the root app are inside application.conf
$ para-cli setup
$ para-cli new-app "myapp" --name "My App"
另外,您可以使用Para Web控制台管理數據,或將PARA直接與下面的API客戶端集成到您的項目中。
Para的標記Docker圖像位於Docker Hub的erudikaltd/para 。強烈建議您僅拉釋放圖像:1.45.1或:latest_stable ,因為:latest標籤可能會被打破或不穩定。首先,創建一個application.conf文件和一個data文件夾,然後啟動Para容器:
$ touch application.conf && mkdir data
$ docker run -ti -p 8080:8080 --rm -v $(pwd)/data:/para/data
-v $(pwd)/application.conf:/para/application.conf
-e JAVA_OPTS="-Dconfig.file=/para/application.conf" erudikaltd/para:latest_stable
環境變量
JAVA_OPTS -Java系統屬性,例如-Dpara.port=8000 BOOT_SLEEP啟動延遲,以秒為單位
插件
要使用插件,請創建一個新的Dockerfile-plugins ,該插件像這樣做多個階段:
# change X.Y.Z to the version you want to use
FROM erudikaltd/para:v1.XY.Z-base AS base
FROM erudikaltd/para-search-lucene:1.XY.Z AS search
FROM erudikaltd/para-dao-mongodb:1.XY.Z AS dao
FROM base AS final
COPY --from=search /para/lib/*.jar /para/lib
COPY --from=dao /para/lib/*.jar /para/lib
然後,只需運行$ docker build -f Dockerfile-plugins -t para-mongo .
可以用JDK 8+編譯Para:
要編譯它,您需要Maven。一旦擁有它,只需克隆並構建:
$ git clone https://github.com/erudika/para.git && cd para
$ mvn install -DskipTests=true要生成可執行的“ fat-jar”運行$ mvn package ,它將在./para-jar/target/para-xyz-SNAPSHOT.jar中。總共生成了兩個JAR文件 - 脂肪的大小更大。
要構建沒有插件的基本包(不包括para-dao-sql和para-search-lucene ),請運行:
$ cd para-jar && mvn -Pbase package
要運行Para的本地實例進行開發,請使用:
$ mvn -Dconfig.file=./application.conf spring-boot:run您可以通過下載可執行JAR,然後:
$ java -jar para-X.Y.Z.jar您可以通過Para Web Console.paraio.org瀏覽對象。只需將API端點更改為本地服務器並連接訪問密鑰即可。管理接口僅是客戶端,您的秘密密鑰永遠不會通過網絡發送。相反,JWT訪問令牌是本地生成的,並按每個請求發送到服務器。
另外,您可以構建戰爭文件並將其部署到您喜歡的Servlet容器:
$ cd para-war && mvn package
您還可以通過將其添加為依賴項來將PARA與您的項目集成在一起。 Para主持在Maven Central。這是在pom.xml中包含的Maven片段:
< dependency >
< groupId >com.erudika</ groupId >
< artifactId >para-server</ artifactId >
< version >{see_green_version_badge_above}</ version >
</ dependency >用於構建連接到Para的輕巧的僅限客戶端應用程序,僅包括客戶端模塊:
< dependency >
< groupId >com.erudika</ groupId >
< artifactId >para-client</ artifactId >
< version >{see_green_version_badge_above}</ version >
</ dependency >$ npm install -g para-cli使用這些客戶庫將PARA快速整合到您的項目中:
使用這些DAO實現來連接到不同的數據庫:
AWSDynamoDAO (包括在para-server中)H2DAO是默認的DAO ,它是SQL插件的一部分(用JAR文件打包) Search界面由以下方式實現:
Cache接口由以下方式實現。
para-server中)Queue接口由以下方式實現:
AWSQueue課程中LocalQueue 2.0段 - 遷移到Quarkus,僅Java 13+,本機圖像para標籤在堆棧溢出上提出一個問題para標籤git checkout -b my-new-feature )git commit -am 'Added a new feature' )git push origin my-new-feature )請嘗試尊重該項目的代碼樣式。要檢查您的代碼,請通過樣式檢查器運行:
mvn validate有關更多信息,請參見貢獻。
Apache 2.0