if a submission requires 20 test cases to run, each of them requires 1s, then it requires to 20s to run? If we distribute it to different servers, then we need to run all of them then aggregate the results? I thought one failure would prevent remaining test cases to run.
The implementation depends on the requirement of the platform. For example, LeetCode's implementation is one failure would prevent remaining test cases to run like you said. HackerRank and AlgoMonster actually run all the test cases even if some of them fail.
1KB is the source code users submit, which is a bit low for verbose languages. I think 10KB is more appropriate. Thanks for the comment. We'll update the document.
using docker will still leak your code, message queue and db keys that you still will need to subscribe to queue and save results to DB maybe a way to disable file access and network for user programs
this is so well detailed, I didn't expect so great material in less than 20 minutes, impressing
Thanks, glad you liked it!
The quality of your content is Great , keep the good work up!
The video and your explanation is just perfect!
I hope your channel grows.
Wow.......Simply amazing.
The quality of content surely deserves a Million Followers. Keep going this way, eager to learn more from you.
keep going man. really helpful what you're doing
if a submission requires 20 test cases to run, each of them requires 1s, then it requires to 20s to run? If we distribute it to different servers, then we need to run all of them then aggregate the results? I thought one failure would prevent remaining test cases to run.
The implementation depends on the requirement of the platform. For example, LeetCode's implementation is one failure would prevent remaining test cases to run like you said. HackerRank and AlgoMonster actually run all the test cases even if some of them fail.
Ohh nice video all the best for future Endeavours and bring more system design videos like this
Yes, we will! Thank you for being our first comment!
This is really helpful. Thanks !
The document says 1KB for solution of each question, but you calculated it as 100KB per submission, is this a typo or am i missing something?
1KB is the source code users submit, which is a bit low for verbose languages. I think 10KB is more appropriate. Thanks for the comment. We'll update the document.
what did you use for documenting the API ?
I used the tool here to document it and have AI grade it: systemdesignschool.io/problems/leetcode
using docker will still leak your code, message queue and db keys that you still will need to subscribe to queue and save results to DB
maybe a way to disable file access and network for user programs
user code runs in docker container has separate filesystem namespace and cannot access other processes
I mean in the docket container you'll have source code ? For polling and executing code ?
On 4:37 u said 556 Read QPS and 5.56 write QPS. Then on 5:47 you say 556 Write QPS and 5.56 Read QPS.
I personally think its 556 WRITE QPS since submission are saved.
Oh oops, it should be read 556 since the assumption is read:write 100:1 (we requests info from the server a lot more than we submit solutions)