-
Notifications
You must be signed in to change notification settings - Fork 428
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ets-backed mongoose_router #3505
Conversation
Codecov Report
@@ Coverage Diff @@
## master #3505 +/- ##
==========================================
+ Coverage 80.96% 80.97% +0.01%
==========================================
Files 418 419 +1
Lines 32329 32309 -20
==========================================
- Hits 26174 26163 -11
+ Misses 6155 6146 -9
Continue to review full report at Codecov.
|
This comment has been minimized.
This comment has been minimized.
6dc91ac
to
97e3e39
Compare
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
small comments
97e3e39
to
4699299
Compare
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
added comments
4699299
to
4e9d66f
Compare
small_tests_24 / small_tests / 4e9d66f small_tests_23 / small_tests / 4e9d66f dynamic_domains_pgsql_mnesia_24 / pgsql_mnesia / 4e9d66f dynamic_domains_pgsql_mnesia_23 / pgsql_mnesia / 4e9d66f dynamic_domains_mysql_redis_24 / mysql_redis / 4e9d66f dynamic_domains_mssql_mnesia_24 / odbc_mssql_mnesia / 4e9d66f ldap_mnesia_23 / ldap_mnesia / 4e9d66f ldap_mnesia_24 / ldap_mnesia / 4e9d66f internal_mnesia_24 / internal_mnesia / 4e9d66f pgsql_mnesia_24 / pgsql_mnesia / 4e9d66f elasticsearch_and_cassandra_24 / elasticsearch_and_cassandra_mnesia / 4e9d66f mysql_redis_24 / mysql_redis / 4e9d66f mssql_mnesia_24 / odbc_mssql_mnesia / 4e9d66f pgsql_mnesia_23 / pgsql_mnesia / 4e9d66f riak_mnesia_24 / riak_mnesia / 4e9d66f |
The beginning of the idea comes from https://www.erlang.org/doc/efficiency_guide/tablesdatabases:
With that text in mind, I realised that the routing table in MIM is currently implemented as a mnesia
local_content
table. So I decided to make it an ets table. Which was a good opportunity to turn it into mongooseim code. Now we have our own nicely optimised router backend for the most common local routing. Components and s2s remain unchanged, to be optimised some other time.