You are not logged in.
Got it , Thank you ab!
I'm tring to merge TTestServiceOrientedArchitecture.TestOverHttp implemention into Sample21-Multithread stress test tool, but stucked on a weired statement:
in the TTestServiceOrientedArchitecture.TestOverHTTP procedure :
HTTPClient.ServicePublishOwnInterfaces(fClient.Server); Everything is OK with original TestSQL3, but if I delete this line, then the later running HttpClient.ServiceRetrieveAssociated will get nothing.
Here, send fClient.Server (a TSQLRestServer instance) to httpclient, can't figure out why it was designed like this. In most situation, client-side code will know nothing about server-implemention. My version of Sample21, client code can't get fClient.Server instance, so I have to delete the line, then stucked. Am I missed something?
Maybe there are too much index on your sqlite table ? 7GB table may counts 2~3 billion rows , update is not easy on any RDBMS. I'm curious whether your MSSQL faster now ? @turrican
Performance much better than my enviorment(FPC win32 @ i5-5200 cpu& SSD ), I've create a repo for mormot-test-result, see https://github.com/cybexr/mormot-benchmark, and welcome everyone commit your result.
The solution we planned is a mormot-based SAAS cloud running on amazon AWS-EC2, so about the test-result, we mainly focused on FPC targeting linux, but any result-log is welcome.
yeah , ab you you're right, thank you for replying
Sample 17 & SAD-document 8.1.10 chapter may helpful.
Sample 04 + sample 30 should fits your REQ.
it's a mis-writing, RLIMIT should be PRLIMIT , I've create a pull-request on github.
TFB is so intresting, nearly collected every well-known web programming framework. According to TFB classfication, mormot should be a "full-stack" "plus" framework, and even more than a framework, it deals with every HTTP-Request, ORM, event-driven, and highly optimized asm code . Mormot&FPC@Linux-SQLite3 result should be very impressive.
@xuyb So , when will you launch Round 14 Benchmarks ?
Docker is a great platform on linux server, and FPC+mormot is also a splendid framework on server programming. But fpc is complex, a lot of dependency, path , ... linux is complex, ubuntu, centos , suse ....
So, have you ever considered construct a docker image to make it easier to get the developing enviorment.
@ab @AOG, :-)
@ab got it , thank you
U := 'Namee ';
UniqueString(U); //Add this line FPC will OK
PWord(@U[4])^ := $a9c3; // some 'e'acute to test UTF-8 encoding
after doing some research on ASM code & Syncomms.pas, I found that add UniqueString() seems work fine. But I'm not sure whether it will cause memory leak ?
mormot sample 15 - External DB performance
var U:RawUTF8;
...
U := 'Namee ';
PWord(@U[4])^ := $a9c3; // some 'e'acute to test UTF-8 encoding //Here D7 run OK, but FPC will raise Exception External: SIGSEGV
Can anyone explian this situaion, or is FPC had some problem on dealing RawUTF8 ?
ab, thank you for your so quick response, I'lll try to add some CJK language friendly tokenizer to engine.
Dear ab, when running mormot sample 30, I want to check about unicode61 tokenizer, after modified TSQLArticleSearch definition as TSQLArticleSearch = class(TSQLRecordFTS4Unicode61), but the mormot generated SQLite3-db still representated table 'ArticleSearch' as tokenize = simple
after I check & modify mormot.pas row-31023 to Self.InheritsFrom(TSQLRecordFTS3Unicode61), everything works fine. So I created a pull request on Github. pls review it and thank you again for your enthusiasm on this wonderful framework :-)
And after doing some work on tokenizer, I found simple & porter & unicode61 tokenizer both can't deal Chinese correctly. Is anyway to add ICU tokenizer or some custom tokenizer?
Below is some informatioin I've investigated :
http://stackoverflow.com/questions/1838 … -when-i-in
https://github.com/wangwang4git/SQLite3-ICU
https://github.com/haifengkao/SqliteSubstringSearch
https://sqlite.org/fts3.html#tokenizer
and , the MVC-server sample-30 has some problem with FPC, when compiled with FPC target win32, the output-exe will crash when startup.
Dear ab, is any progress on this MVC-BBS demo ?
@emk, got it . Separate DB can make offline work easier, architeture is about make choice, you get something meanwhile you lose something ![]()
emk
I don't know whether your CustomerX must be work OFFLINE. if the answer is NO, I think keep ALL data in one RDBMS is a better idea,based on current firebird DB-schema then add 2 column "CustomerX", "FinalCustomer1" to all tables, pump all your tables to RDBMS, then you can work with one HTTPServer + one RESTServerDB,one mormot-exe serves 200 con-current will be a litte case. Then you can free from handle such question : db replication, DDL sync, db broken ...
As for your FinalCustomer1's legal REQ, think about mormot's Redirect feature, it may be helpful to implement a dinstinct FinalCustomer's DB.
in client code, just replace server address- "localhost" with "ipv4.fiddler", then fiddler will capture loopback packet
Look here: http://synopse.info/forum/viewtopic.php … 363#p20363
You need
{$ifdef Linux} {$ifdef FPC_CROSSCOMPILING} {$ifdef CPUARM} //if GUI, then uncomment //{$linklib GLESv2} {$endif} {$linklib libc_nonshared.a} {$endif} {$endif}Put the above at the start of your lpr/dpr !
fixed thank you
Tried to crosscompile linux from win32 , but failed with following repo:
NewPascal https://github.com/dathox/newpascalpack … ss-v1.0.22
Mormot 1.18.2953 https://github.com/synopse/mORMot
Lazarus give me such messages:
...
SynSelfTests.pas(1279,3) Hint: (5023) Unit "TestSQL3FPCInterfaces" not used in SynSelfTests
mORMotSelfTests.pas(165,3) Warning: (6018) unreachable code
C:\NewPascal\fpc\units\i386-linux\rtl\si_c21.o: In function `SI_C21_$$__FPC_LIBC21_START':
si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x27): undefined reference to `__libc_csu_fini'
si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x2c): undefined reference to `__libc_csu_init'
TestSQL3.dpr(195,1) Error: (9013) Error while linking
FPC command-lines:
C:\NewPascal\fpc\bin\i386-win32\fpc.exe -B -Tlinux -Pi386 -MObjFPC -Scaghi -Cirot -O1 -gw2 -godwarfsets -gl -gh -Xg -l -vewnhibq -Fid:\DEV\lib -Fid:\DEV\lib\SQLite3\fpc\debug\i386-linux -FlC:\NewPascal\cross\bin\i386-linux -FlC:\NewPascal\cross\lib\i386-linux -Fud:\DEV\lib -Fud:\DEV\lib\SQLite3\ -FUd:\DEV\lib\SQLite3\fpc\debug\i386-linux\ -FEd:\DEV\lib\SQLite3\fpc\debug\i386-linux\ TestSQL3.dpr