Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
df49866
update:build workflows
xengine-qyt Nov 19, 2024
3990487
added:issue translator and release workflows
xengine-qyt Nov 19, 2024
a2c9a81
update:depend library and fix workflows.
xengine-qyt Nov 19, 2024
aa46298
improved:start parameter parse
xengine-qyt Nov 20, 2024
afdd053
added:coredump file support on windows
xengine-qyt Nov 20, 2024
7cb4250
fixed:sometime crashed when exist
xengine-qyt Nov 20, 2024
bb22daa
modify:release path structure
xengine-qyt Nov 20, 2024
1d9795c
update:read me and release.yml
xengine-qyt Nov 21, 2024
9ad3933
fixed:get online user is incorrect when publish message
xengine-qyt Nov 21, 2024
0288b97
fixed:immediate notify user process is incorrect
xengine-qyt Nov 21, 2024
881bc04
added:memory cache module
xengine-qyt Nov 21, 2024
a67c132
added:memory cache configure supported
xengine-qyt Nov 21, 2024
cef9679
update:configure file
xengine-qyt Nov 21, 2024
76cf584
added:Message Data Queue Cache Support
xengine-qyt Nov 25, 2024
4961cf7
fixed:release workflows/msbuild.yml
xengine-qyt Nov 25, 2024
53e304f
fixed:copy file workflows/msbuild.yml
xengine-qyt Nov 25, 2024
0758b3d
modify:delete table to clear cache supported
xengine-qyt Nov 25, 2024
7381e5c
improved:delete memory cache index
xengine-qyt Nov 26, 2024
06f0d4d
added:data insert memory-cache and switch supported
xengine-qyt Nov 28, 2024
33438dc
fixed:build error
xengine-qyt Nov 28, 2024
771a0a6
added:more information print for callback of memory-cache
xengine-qyt Nov 28, 2024
278c458
update:release and configure
xengine-qyt Nov 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .github/workflows/issue-translator.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Issue Translator
on:
issue_comment:
types: [created]
issues:
types: [opened]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: usthe/[email protected]
with:
IS_MODIFY_TITLE: false
CUSTOM_BOT_NOTE: Bot detected the issue body's language is not English, translate it automatically.
15 changes: 11 additions & 4 deletions .github/workflows/linuxbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@ name: ubuntu build workflows
on:
push:
branches: [ "develop" ]
pull_request:
branches: [ "develop" ]
paths:
- 'XEngine_Source/**'
- 'XEngine_Release/**'

permissions:
contents: read
Expand All @@ -17,7 +18,7 @@ jobs:
matrix:
include:
- os: ubuntu-22.04
- os: ubuntu-24.04
#- os: ubuntu-24.04
runs-on: ${{ matrix.os }}

steps:
Expand Down Expand Up @@ -61,4 +62,10 @@ jobs:
- name: test
run: |
cd XEngine_Release
./XEngine_MQServiceApp -t
./XEngine_MQServiceApp -t

- name: Upload folder as artifact with ubuntu
uses: actions/upload-artifact@v4
with:
name: XEngine_MQServiceApp-x86_64-Ubuntu
path: XEngine_Release/
11 changes: 9 additions & 2 deletions .github/workflows/macbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@ name: macos build workflows
on:
push:
branches: [ "develop" ]
pull_request:
branches: [ "develop" ]
paths:
- 'XEngine_Source/**'
- 'XEngine_Release/**'

permissions:
contents: read
Expand Down Expand Up @@ -62,3 +63,9 @@ jobs:
run: |
cd XEngine_Release
./XEngine_MQServiceApp -t

- name: Upload folder as artifact with mac
uses: actions/upload-artifact@v4
with:
name: XEngine_MQServiceApp-x86_64-Mac
path: XEngine_Release/
34 changes: 24 additions & 10 deletions .github/workflows/msbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@ name: windows build workflows
on:
push:
branches: [ "develop" ]
pull_request:
branches: [ "develop" ]
paths:
- 'XEngine_Source/**'
- 'XEngine_Release/**'

permissions:
contents: read
Expand Down Expand Up @@ -60,18 +61,31 @@ jobs:
run: |
cp -r XEngine_Source/Release/*.dll XEngine_Release/
cp -r XEngine_Source/Release/*.exe XEngine_Release/
cp -r XEngine_Source/VSCopy-x86.bat XEngine_Release/
cp -r XEngine_Source/VSCopy_x86.bat XEngine_Release/
cd XEngine_Release
./VSCopy-x86.bat
./VSCopy_x86.bat
./XEngine_MQServiceApp.exe -t
shell: pwsh
- name: Conditional Step for x86 Debug
if: matrix.configuration == 'Debug' && matrix.platform == 'x86'
if: matrix.configuration == 'Release' && matrix.platform == 'x64'
run: |
cp -r XEngine_Source/Debug/*.dll XEngine_Release/
cp -r XEngine_Source/Debug/*.exe XEngine_Release/
cp -r XEngine_Source/VSCopy-x86.bat XEngine_Release/
cp -r XEngine_Source/x64/Release/*.dll XEngine_Release/
cp -r XEngine_Source/x64/Release/*.exe XEngine_Release/
cp -r XEngine_Source/VSCopy_x64.bat XEngine_Release/
cd XEngine_Release
./VSCopy-x86.bat
./XEngine_MQServiceApp.exe -t
./VSCopy_x64.bat
shell: pwsh

- name: Upload folder as artifact with x86
if: matrix.configuration == 'Release' && matrix.platform == 'x86'
uses: actions/upload-artifact@v4
with:
name: XEngine_MQServiceApp-x86_32-Windows
path: XEngine_Release/

- name: Upload folder as artifact with x64
if: matrix.configuration == 'Release' && matrix.platform == 'x64'
uses: actions/upload-artifact@v4
with:
name: XEngine_MQServiceApp-x86_64-Windows
path: XEngine_Release/
89 changes: 89 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
name: release packet

on:
push:
branches:
- master

jobs:
build:
runs-on: ubuntu-latest

steps:
# 检出代码并包含标签
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Download linuxbuild
uses: dawidd6/action-download-artifact@v6
with:
workflow: linuxbuild.yml
workflow_conclusion: success
check_artifacts: false
skip_unpack: true
if_no_artifact_found: fail
path: ./XRelease/
- name: Download macbuild
uses: dawidd6/action-download-artifact@v6
with:
workflow: macbuild.yml
workflow_conclusion: success
check_artifacts: false
skip_unpack: true
if_no_artifact_found: fail
path: ./XRelease/
- name: Download msbuild
uses: dawidd6/action-download-artifact@v6
with:
workflow: msbuild.yml
workflow_conclusion: success
check_artifacts: false
skip_unpack: true
if_no_artifact_found: fail
path: ./XRelease/

- name: Display structure of downloaded files
run: ls -al ./XRelease/

- name: Get current version and increment X
id: versioning
run: |
latest_tag=$(git describe --tags `git rev-list --tags --max-count=1`)
echo "Latest tag: $latest_tag"
# 提取 X 的值并递增
major=$(echo $latest_tag | cut -d '.' -f 1)
minor=$(echo $latest_tag | cut -d '.' -f 2)
patch=$(echo $latest_tag | cut -d '.' -f 3)
build=$(echo $latest_tag | cut -d '.' -f 4)

new_minor=$((minor + 1))
new_version="$major.$new_minor.$patch.$build"
echo "New version: $new_version"
echo "new_tag=$new_version" >> $GITHUB_OUTPUT
echo "prev_tag=$latest_tag" >> $GITHUB_OUTPUT

- name: Create and push new tag
run: |
git tag ${{ steps.versioning.outputs.new_tag }}
git push origin ${{ steps.versioning.outputs.new_tag }}

- name: Generate release notes
run: |
logs=$(git log ${{ steps.versioning.outputs.prev_tag }}..${{ steps.versioning.outputs.new_tag }} --pretty=format:"* %h - %s - %an" --no-merges)
release_notes=$(echo "$logs" | sed 's/ qyt$/ @xengine-qyt/')
echo "$release_notes"
echo "$release_notes" > release_notes.txt

- name: Release
uses: softprops/action-gh-release@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
draft: false
prerelease: false
tag_name: ${{ steps.versioning.outputs.new_tag }}
name: XEngine_MQService ${{ steps.versioning.outputs.new_tag }}
body_path: release_notes.txt
files: ./XRelease/*.zip
20 changes: 20 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
XEngine_MQService V3.13.0.1001

增加:为DATA消息数据库增加高速缓存支持
增加:coredump的windows支持
更新:工作流自动发布支持
更新:依赖库
优化:启动参数解析
修正:某些时候退出崩溃问题
修正:发布消息时候获取在线用户不正确的问题
修正:通知用户处理问题

added:memory cache module for Data DB
added:coredump file support on windows
update:release workflows supported
update:depend library
improved:start parameter parse
fixed:sometime crashed when exist
fixed:get online user is incorrect when publish message
fixed:immediate notify user process is incorrect
======================================================================================
XEngine_MQService V3.12.0.1001

增加:编译CI工作流支持
Expand Down
3 changes: 3 additions & 0 deletions README.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ this software support following features
17. binary message
18. http interface management
19. message attritube
20. point to point message
21. Memory Database

## install

Expand Down Expand Up @@ -113,6 +115,7 @@ Address:app.xyry.org Port:TCP 5200,WEBSOCKET 5201,HTTP Management Interface 5202
2. Create new Feat_xxx branch
3. Submit the code
4. New Pull Request
5. Submit develop branch

## Follow us
If you think this software is helpful to you, please give us a START
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ c c++Message Service
17. 二进制消息
18. http接口管理
19. 消息属性
20. 点对点消息
21. 高速缓存

## 安装教程

Expand Down Expand Up @@ -119,6 +121,7 @@ make FLAGS=CleanAll 清理编译
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
5. 提交到develop分支

## 关注我们
如果你觉得这个软件对你有帮助,请你给我们一个START吧
Expand Down
8 changes: 7 additions & 1 deletion XEngine_Release/XEngine_Config/XEngine_Config.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
"SQLAddr":"10.0.3.154",
"SQLPort":3306,
"SQLUser":"root",
"SQLPass":"123123"
"SQLPass":"123123aa"
},
"XPass":{
"nTimeout":2,
Expand All @@ -34,6 +34,12 @@
"tszPassLogin":"",
"tszPassLogout":""
},
"XMemory":{
"bDataQueryEnable":true,
"bDataInsertEnable":true,
"nTimeLast":3600,
"nTimeStart":0
},
"XReport":{
"bEnable":true,
"tszServiceName":"XEngine_MQService",
Expand Down
1 change: 1 addition & 0 deletions XEngine_Release/XEngine_Config/XEngine_VerConfig.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"XVer":[
"3.13.0.1001 Build20241129",
"3.12.0.1001 Build20240919",
"3.11.0.1001 Build20240517",
"3.10.0.1001 Build20240305",
Expand Down
Empty file.
7 changes: 7 additions & 0 deletions XEngine_Source/MQCore_ConfigModule/Config_Define.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,13 @@ typedef struct
XCHAR tszPassLogout[MAX_PATH];
int nTimeout;
}st_XPass;
struct
{
bool bDataQueryEnable;
bool bDataInsertEnable;
int nTimeLast;
int nTimeStart;
}st_XMemory;
struct
{
bool bEnable;
Expand Down
3 changes: 2 additions & 1 deletion XEngine_Source/MQCore_ConfigModule/Config_Error.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,5 @@
#define ERROR_MQ_MODULE_CONFIG_JSON_XSQL 0x0020006
#define ERROR_MQ_MODULE_CONFIG_JSON_XPASS 0x0020007
#define ERROR_MQ_MODULE_CONFIG_JSON_XVER 0x0020008
#define ERROR_MQ_MODULE_CONFIG_JSON_XREPORT 0x0020009
#define ERROR_MQ_MODULE_CONFIG_JSON_XREPORT 0x0020009
#define ERROR_MQ_MODULE_CONFIG_JSON_XMEMORY 0x0020010
12 changes: 12 additions & 0 deletions XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,18 @@ bool CConfig_Json::Config_Json_File(LPCXSTR lpszConfigFile,XENGINE_SERVERCONFIG
_tcsxcpy(pSt_ServerConfig->st_XPass.tszPassRegister, st_JsonXPass["tszPassRegister"].asCString());
_tcsxcpy(pSt_ServerConfig->st_XPass.tszPassUNReg, st_JsonXPass["tszPassUNReg"].asCString());

if (st_JsonRoot["XMemory"].empty() || (4 != st_JsonRoot["XMemory"].size()))
{
Config_IsErrorOccur = true;
Config_dwErrorCode = ERROR_MQ_MODULE_CONFIG_JSON_XMEMORY;
return false;
}
Json::Value st_JsonXMemory = st_JsonRoot["XMemory"];
pSt_ServerConfig->st_XMemory.bDataQueryEnable = st_JsonXMemory["bDataQueryEnable"].asBool();
pSt_ServerConfig->st_XMemory.bDataInsertEnable = st_JsonXMemory["bDataInsertEnable"].asBool();
pSt_ServerConfig->st_XMemory.nTimeLast = st_JsonXMemory["nTimeLast"].asInt();
pSt_ServerConfig->st_XMemory.nTimeStart = st_JsonXMemory["nTimeStart"].asInt();

if (st_JsonRoot["XReport"].empty() || (3 != st_JsonRoot["XReport"].size()))
{
Config_IsErrorOccur = true;
Expand Down
12 changes: 11 additions & 1 deletion XEngine_Source/MQCore_DBModule/DBModule_Define.h
Original file line number Diff line number Diff line change
Expand Up @@ -71,12 +71,22 @@ extern "C" XLONG DBModule_GetLastError(int *pInt_SysError = NULL);
类型:数据结构指针
可空:N
意思:数据MYSQL数据库连接信息
参数.二:bMemoryQuery
In/Out:In
类型:逻辑型
可空:Y
意思:是否启用查询缓存支持
参数.三:bMemoryInsert
In/Out:In
类型:逻辑型
可空:Y
意思:是否启用插入缓存支持
返回值
类型:逻辑型
意思:是否成功
备注:
*********************************************************************/
extern "C" bool DBModule_MQData_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector);
extern "C" bool DBModule_MQData_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector, bool bMemoryQuery = true, bool bMemoryInsert = true);
/********************************************************************
函数名称:DBModule_MQData_Destory
函数功能:销毁数据库管理器
Expand Down
Loading