microsoftgraph / microsoftgraph/microsoft-graph-comms-samples
Application-Hosted media deployment model
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 253
- Forks
- 275
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 1
Description
Hi,
I’m looking for a deployment model for application-hosted media bots that fits better for my business necessity.
Considering that the documentation recommends Service Fabric & Cloud Service, I did a quick research about both services and checked the existing GitHub’s issues to get a better understanding on how the bot/media platform works.
Taking the following issues #123, https://github.com/microsoftgraph/microsoft-graph-comms-samples/issues/153#issuecomment-5924166620 and #222 as basis, the key-points that I highlight are:
- Despite the differences between Service Fabric & Cloud Service, we have a kind of load balancer that receives the incoming calls and dispatch the request to one of the existing instances.
- The chosen instance tells Graph API which calling endpoint should use to deliver the notifications, so Graph API can deliver the notifications related to the created call to the instance that is handling it.
- A single bot instance may handle multiple calls.
- We should monitor the CPU load and try to keep the average CPU load below 70% usage
Considering the mentioned above, to avoid performance issues and ensure a CPU load below 70% usage, I want to limit the number of calls to one call per Bot Instance (VM) but I’m not sure how to do that with SF, if it’s feasible or if isn’t recommended. I tried using ACI and creating container instances per incoming call but the hardware configuration of ACI is very limited and doesn’t achieve the suggested VM requirements. Also, in the following issue https://github.com/microsoftgraph/microsoft-graph-comms-samples/issues/123#issuecomment-553467083 someone asks a similar question (but with different approach) about the possibility to route new calls to node that have lower load than others but ksikorsk does not recommend that approach.
I will keep digging in Microsoft Service Fabric documentation, but if you have any suggestions/recommendations I will appreciate them.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the Service Fabric and Cloud Service documentation, then review the referenced issues #123, #153, and #222 for existing deployment guidance. Determine whether limiting each bot instance to one call is feasible and recommended while maintaining the stated CPU target; the issue is done when a supported deployment recommendation is established.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure
- Domain
- api, cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100