Clever Engineer

Clever Engineer

Share

30/09/2024

Try out our new Mobile app that help smoothing payment of Events

Version with updated instructions

Join the Tick8 Plus Beta Testing Program!

Weโ€™re excited to announce the beta testing program for Tick8 Plus, the cashless event ticketing platform developed by BITS. We seek feedback from passionate users to help us improve the attendee and organizer mobile apps. Testing is currently limited to Android (APK), and your feedback will be invaluable in shaping the final version of our platform.

By joining, youโ€™ll be among the first to experience Tick8 Plus' seamless ticket purchasing, NFC-based in-event transactions(excluded from this initial test), and more! Your honest and logical feedback will help us deliver the best possible product.

How It Works:

Sign Up: We collect your name and email to have a record of all testers.
Anonymous Feedback: To ensure feedback remains unbiased, it will be stored separately from your details, keeping it anonymous.
If youโ€™re interested in being part of our journey and providing valuable insights, please visit our beta program page below:

๐Ÿ‘‰ Join the Tick8 Plus Beta Program (https://www.tick8plus.com/ -program)

We look forward to your participation and thank you for helping us make Tick8 Plus better!

Something to note:
In the attendee app, currently, all payments are in the demo stage, so there no actual deduction will be made.

For stripe payment, you can use the following test details
Card number:
424242424242424242 - expiry:
04/26 | cvv: 424

MTN Momo: any valid 10 digit (0880112233)

Wallet: To use the wallet method as payment, you need to firstly access the wallet screen and top up your wallet using mtn momo (0880112233). Then, you can test the wallet payment feature...

For organizer: The available amount to withdraw will only show after your event has ended. Once your available amount to withdraw is available, you can withdraw using MTN Momo(only for now)Try this new platform

01/02/2024

๐ˆ๐ง ๐ฌ๐ฒ๐ฌ๐ญ๐ž๐ฆ ๐๐ž๐ฌ๐ข๐ ๐ง ๐ˆ๐ง๐ญ๐ž๐ซ๐ฏ๐ข๐ž๐ฐ๐ฌ ๐ฒ๐จ๐ฎ ๐ฐ๐ข๐ฅ๐ฅ ๐›๐ž ๐š๐ฌ๐ค ๐ญ๐ก๐ข๐ฌ ๐ช๐ฎ๐ž๐ฌ๐ญ๐ข๐จ๐ง ๐ญ๐จ ๐๐ž๐ฌ๐ข๐ ๐ง ๐š ๐ซ๐š๐ญ๐ž ๐ฅ๐ข๐ฆ๐ข๐ญ๐ž๐ซ

A rate limiter serves as a throttle for API endpoints, defining the allowable frequency of API calls within a specified time interval.

๐‘Šโ„Ž๐‘ฆ ๐‘–๐‘  ๐‘Ž ๐‘Ÿ๐‘Ž๐‘ก๐‘’ ๐‘™๐‘–๐‘š๐‘–๐‘ก๐‘’๐‘Ÿ ๐‘๐‘Ÿ๐‘ข๐‘๐‘–๐‘Ž๐‘™?

It safeguards against potential DOS attacks on APIs and, additionally,

It also curtails costs by processing only those requests that need to be executed within a designated time frame.

When crafting a rate limiter, it's crucial to weigh where to implement itโ€”whether on the client side, server side, or within middleware. The choice depends entirely on the specific problem you are addressing. But the recommend best place is the server

Here are various types of rate limiter algorithms to consider:

๐“๐จ๐ค๐ž๐ง ๐๐ฎ๐œ๐ค๐ž๐ญ ๐€๐ฅ๐ ๐จ๐ซ๐ข๐ญ๐ก๐ฆ
๐‹๐ž๐š๐ค๐ฒ ๐๐ฎ๐œ๐ค๐ž๐ญ ๐€๐ฅ๐ ๐จ๐ซ๐ข๐ญ๐ก๐ฆ
๐…๐ข๐ฑ๐ž๐ ๐–๐ข๐ง๐๐จ๐ฐ ๐‚๐จ๐ฎ๐ง๐ญ๐ž๐ซ
๐’๐ฅ๐ข๐๐ข๐ง๐  ๐–๐ข๐ง๐๐จ๐ฐ ๐‚๐จ๐ฎ๐ง๐ญ๐ž๐ซ
๐ƒ๐ข๐ฌ๐ญ๐ซ๐ข๐›๐ฎ๐ญ๐ž๐ ๐‘๐š๐ญ๐ž ๐‹๐ข๐ฆ๐ข๐ญ๐ข๐ง๐ 

๐—ง๐—ผ๐—ธ๐—ฒ๐—ป ๐—•๐˜‚๐—ฐ๐—ธ๐—ฒ๐˜ ๐—”๐—น๐—ด๐—ผ๐—ฟ๐—ถ๐˜๐—ต๐—บ

Maintain a bucket with tokens, each representing the right to make an API call.
Tokens are added to the bucket at a fixed rate.
When an API call is made, a token is consumed from the bucket.
If the bucket is empty, further API calls are delayed until tokens are replenished.

๐—Ÿ๐—ฒ๐—ฎ๐—ธ๐˜† ๐—•๐˜‚๐—ฐ๐—ธ๐—ฒ๐˜ ๐—”๐—น๐—ด๐—ผ๐—ฟ๐—ถ๐˜๐—ต๐—บ

Conceptually, requests "leak" into a bucket at a fixed rate.
When a request arrives, it is placed in the bucket.
If the bucket is full, excess requests are discarded or delayed.
Requests are processed at a constant rate, preventing bursts of traffic.

๐—™๐—ถ๐˜… ๐˜„๐—ถ๐—ป๐—ฑ๐—ผ๐˜„

Maintain a counter for each fixed time window.
Increment the counter for each API call within the window.
Reset the counter at the end of the window.
Limit the total count within the window to control the rate.

๐—ฆ๐—น๐—ถ๐—ฑ๐—ถ๐—ป๐—ด ๐—ช๐—ถ๐—ป๐—ฑ๐—ผ๐˜„ ๐—–๐—ผ๐˜‚๐—ป๐˜๐—ฒ๐—ฟ

Similar to the fixed window counter, but the time window "slides" continuously.
Track the count of API calls within the most recent time interval.
Enforce a limit on the total count within the sliding window.

๐——๐—ถ๐˜€๐˜๐—ฟ๐—ถ๐—ฏ๐˜‚๐˜๐—ฒ๐—ฑ ๐—ฅ๐—ฎ๐˜๐—ฒ ๐—Ÿ๐—ถ๐—บ๐—ถ๐˜๐—ถ๐—ป๐—ด

Use multiple rate limiters distributed across different components or servers.
Centralized coordination or distributed algorithms ensure a global rate limit is maintained.
Effective for large-scale systems to prevent overloads and ensure fair resource allocation.

Each algorithm provides a different approach to controlling the rate of API requests, allowing system designers to choose based on specific requirements and characteristics of their applications.

Follow Clever Engineer for more quality tech knowledge

Want your school to be the top-listed School/college in Monrovia?
Click here to claim your Sponsored Listing.

Telephone

Website

Address


9 Street Sinkor
Monrovia
1000