Skip to content

Threadsafe, fast and clean fork - What to do? #9

@viblo

Description

@viblo

I have rewritten large parts of the UdgerParser from the dev_v3 branch to make it threadsafe, faster and cleanup the code. It passes all the tests, and from my own testing is much faster than the previous version.

Compared to the previous implementation it caches most of the database in memory, except IP locations and IPv6 data center mainly because the IP location lookup table is huge. It adds a flag to do Data Center parsing (DataCenterParserEnabled) so that you enable data center parsing at the same time as IP location can be disabled (so you can run it fully in memory without disk reads and still parse IPv4 data centers).

We have been running it in production for a while, and it seems to be working well.

Currently its a fork available here: https://github.com/nordicfactory/udger-dotnet
I would be happy to make a PR if you think its appropriate.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions