Skip to content
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

Merge Next to Test scaling #80

Merged
merged 32 commits into from
Sep 20, 2024
Merged

Merge Next to Test scaling #80

merged 32 commits into from
Sep 20, 2024

Conversation

Cahb
Copy link
Contributor

@Cahb Cahb commented Sep 20, 2024

Use next changes in a separate PR / image to test performance (other changes could be potentially checked in after/while testing)

SviatoslavBoichuk and others added 30 commits July 12, 2024 14:44
Send unzipped AP State Event message to Kafka
…n-init

Move CGW runtime creation to init stage
…pomap

Do not process lldp & link state data if topology map is disabled
…chemas

Validate configure messages using JSON Validation schema
…_helper

Kafka simulator: add a helper script to populate infras / groups
Added new API to add group to specific shard id
Add environment variables to configure groups capacity and threshold
Currently, schema validator panics because sync func is called
within async context.

Temporary W/A to at least overcome issue at least temporarily,
up untill refactoring enforced.

Also add RUST_BACKTRACE=1 to the run_cgw to enable tracing
by default (if launched through helper script).

Signed-off-by: Oleksandr Mazur <[email protected]>
Current approach aims to fight for best performance we can get
from topo map by utilizing the following key concepts:
  - Event notification (notify NB about topo change) is handled
    by async task;
  - Events received from devices are pushed into queue for processing;
    These events then processed asynchronously, without blocking the
    underlying connections, to prevent websocket connections from
    staggerring completely, and also to serialize the processing
    of connections in a semi-synchronous manner
    (events pushed asynchronously, but the processing of them
     boils down to one-by-one FIFO-mannered processing synchronously)

Also added extended support for RT events: RT events now also generate
join/leave/migrate events to the NB services, so they can act
accordingly.
Current implementation also adds barebone support essentials
for graph-like presentation of topology, but doesn't implement
the graph generation itself (e.g. data is being collected / stored
in a way, in which future impl could just simply use it and focus
on the graph-generation algorith itself, rather then implementing
code that gathers data / tweaks parsers etc; Graph gen was postponed
due to lower priority).

Signed-off-by: Oleksandr Mazur <[email protected]>
Co-developed-by: Sviatoslav Boichuk <[email protected]>
Signed-off-by: Sviatoslav Boichuk <[email protected]>
Carsten Schafer added 2 commits September 19, 2024 12:11
Signed-off-by: Carsten Schafer <[email protected]>
Signed-off-by: Carsten Schafer <[email protected]>
@Cahb Cahb merged commit 4f0c20b into test_scaling Sep 20, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants