High-Performance Programming
High-Performance Programming
  • 55
  • 1 465 412
Rest API - Best Practices - Design
Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap
✏️📘 Summary Notes: 1levelup.dev/blog/consistent-hashing
0:00 - Introduction
0:52 - Stateless API
2:29 - Making Stateful Apps Stateless
4:37 - No action for the API
7:52 - Do not return plain text
9:35 - Recipe for disaster
12:38 - Handling Exceptions
14:26 - Worth to HATEOAS?
Переглядів: 99 278

Відео

Which Database Model to Choose?
Переглядів 46 тис.Рік тому
Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap ✏️📘 Summary Notes: 1levelup.dev/blog/consistent-hashing Key-Value 🐇 1:04 - Flexible for Unstructured Data 1:22 - Fast Lookup 1:53 - In-Memory Database 3:59 - Not for Complex Data Structures 4:21 - Not for ACID transactions 4:53 - Not for Historical Data 5:13 - Caching Wide-column 🎡...
How TLS Works?
Переглядів 37 тис.Рік тому
Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap ✏️📘 Summary Notes: 1levelup.dev/blog/consistent-hashing 0:00 - Why TLS? 0:44 - What does TLS do? 2:09 - SSL vs TLS vs HTTPS 2:46 - How does TLS work? 4:16 - How TLS / SSL certificates are obtained? 5:18 - How is the public key used by TLS / SSL? 7:00 - How good is the TLS encryptio...
Design a Payment System - System Design Interview
Переглядів 426 тис.Рік тому
Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap ✏️📘 Summary Notes: 1levelup.dev/blog/consistent-hashing 0:00 - Context 0:45 - How a payment system works? 3:05 - Scope the problem 5:21 - Functional and Non-Functional Requirements 6:05 - Payment System Components 8:27 - Asynchronous Payments 12:40 - Dealing with Payment Failures 1...
Design Twitter - System Design Interview
Переглядів 8 тис.Рік тому
Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap ✏️📘 Summary Notes: 1levelup.dev/blog/consistent-hashing 0:00 - Context 0:24 - Requirements & Goals of the System 1:09 - Functional Requirements 2:16 - Non-Functional Requirements 3:16 - Capacity Estimation 5:37 - Flow of posting a Tweet 6:24 - Building the Newsfeed 8:11 - APIs 9:41...
Rate Limiting - System Design Interview
Переглядів 25 тис.Рік тому
Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap ✏️📘 Summary Notes: 1levelup.dev/blog/consistent-hashing 0:00 - What is Rate Limiting? 1:12 - Why use a Rate Limiter? 2:31 - How to Design a Rate Limiter? 3:21 - Functional Requirements 3:51 - Non-Functional Requirements 4:57 - Rate Limiting Types 5:52 - Data Handling 6:53 - Leaking...
Consistent Hashing - System Design Interview
Переглядів 14 тис.Рік тому
Get a Free System Design Roadmap PDF with 145 pages by subscribing to our monthly newsletter: 1levelup.dev/roadmap ✏️📘 Summary Notes: 1levelup.dev/blog/consistent-hashing 0:00 - Context 1:53 - The hashing problem 3:51 - What is Consistent Hashing? 6:12 - Scaling Out 7:12 - Scaling Down 7:53 - Uniform Distribution Issue 8:52 - Virtual Nodes 11:10 - Conclusions
PostgreSQL HA High Availability Tutorial
Переглядів 44 тис.2 роки тому
0:00 - Why High Availability? 0:39 - Steps to achieve High Availability 2:36 - Essential Questions to set-up High Availability 7:56 - Log-Shipping Replication 9:19 - Streaming Replication and Logical Replication 11:50 - Cascading Replication 13:07 - Synchronous vs. Asynchronous Replication 15:11 - Automatic Failover and Always-on Strategy 16:32 - Simple HA Solution Example 17:23 - Better HA Sol...
CAP Theorem: PostgreSQL vs Cassandra
Переглядів 7 тис.2 роки тому
0:00 - CAP Theorem Explained 3:49 - PostgreSQL vs. Cassandra 5:48 - Use case: CA Systems 7:00 - Use case: AP Systems 🐘 Want to find out MORE about Scaling PostgreSQL? Use the link below to get 60% OFF on the Entire Course. www.udemy.com/course/postgresql-replication-high-availability-ha-and-scalability/?couponCode=4A479408B9FCA4CE62E4
PostgreSQL Partitioning Tutorial
Переглядів 48 тис.2 роки тому
Fix: The maximum table size is 32TB and not 32GB. (for default 8 K blocks) 0:00 - Introduction 0:59 - Which Tables Need Partitioning? 3:05 - How should the Tables be Partitioned? 4:52 - Declarative vs. Inheritance Partitioning 5:37 - Creating a Partitioned Table 9:58 - Partitioning Methods 🐘 Want to find out MORE about Scaling PostgreSQL? Use the link below to get 60% OFF on the Entire Course. ...
Scaling PostgreSQL with Google Cloud and HAProxy
Переглядів 7 тис.2 роки тому
0:00 - Introduction 0:27 - Key Components 1:05 - Key Characteristics of the Architecture 2:03 - Creating PostgreSQL Instances on Google Cloud 6:39 - Creating a GCE for HAProxy 10:39 - Configuring HAProxy for Load-Balancing 16:54 - Testing Load-Balancing 🐘 Want to find out MORE about Scaling PostgreSQL? Use the link below to get 60% OFF on the Entire Course. www.udemy.com/course/postgresql-repli...
PgBouncer Tutorial
Переглядів 35 тис.2 роки тому
0:00 - Introduction 0:53 - Fundamental concepts of connection pooling 3:16 - Building a PgBouncer Setup 5:15 - Installing and Configure PgBouncer 5:53 - Creating a basic configuration file for PgBouncer 9:08 - Connecting to PgBouncer 10:21 - Advanced Settings for Performance 13:17 - Pool Modes 15:08 - A simple benchmark 🐘 Want to find out MORE about Scaling PostgreSQL? Use the link below to get...
PostgreSQL Streaming Replication Tutorial
Переглядів 59 тис.2 роки тому
PostgreSQL Streaming Replication Tutorial
Pgpool-II Tutorial
Переглядів 52 тис.2 роки тому
Pgpool-II Tutorial
PostgreSQL Logical Replication Guide
Переглядів 36 тис.2 роки тому
PostgreSQL Logical Replication Guide
HTTP 3 Explained
Переглядів 61 тис.2 роки тому
HTTP 3 Explained
Advanced Debugger Features in IntelliJ IDEA
Переглядів 1,2 тис.2 роки тому
Advanced Debugger Features in IntelliJ IDEA
IntelliJ IDEA Maven tutorial
Переглядів 2,3 тис.2 роки тому
IntelliJ IDEA Maven tutorial
MySQL Server Configuration for High Performance
Переглядів 26 тис.3 роки тому
MySQL Server Configuration for High Performance
MySQL Spotting Performance Problems
Переглядів 9 тис.3 роки тому
MySQL Spotting Performance Problems
MySQL Architecture
Переглядів 22 тис.3 роки тому
MySQL Architecture
MySQL Covering Index
Переглядів 3,9 тис.3 роки тому
MySQL Covering Index
MySQL Index Performance
Переглядів 7 тис.3 роки тому
MySQL Index Performance
MySQL How To Choose the Primary Key
Переглядів 3,8 тис.3 роки тому
MySQL How To Choose the Primary Key
MySQL Composite Index Best Practices
Переглядів 17 тис.3 роки тому
MySQL Composite Index Best Practices
Use MySQL EXPLAIN for Query Optimization
Переглядів 53 тис.3 роки тому
Use MySQL EXPLAIN for Query Optimization
IntelliJ IDEA Database Tools 2020.3
Переглядів 18 тис.3 роки тому
IntelliJ IDEA Database Tools 2020.3
Code Completion in IntelliJ IDEA
Переглядів 1,6 тис.3 роки тому
Code Completion in IntelliJ IDEA
IntelliJ IDEA Postfix Code Completion - Accelerate your productivity
Переглядів 2,4 тис.3 роки тому
IntelliJ IDEA Postfix Code Completion - Accelerate your productivity
Apache Solr 8 - Understanding Facets
Переглядів 9 тис.4 роки тому
Apache Solr 8 - Understanding Facets

КОМЕНТАРІ

  • @karanpathak8775
    @karanpathak8775 День тому

    For most web application, MySQL stands out to be better because most of the applications are read-heavy in nature. PostgreSQL is good for write-heavy applications only. Both the DBs are strong ACID compliant.

  • @dataxorg4359
    @dataxorg4359 6 днів тому

    gr8 tutorial , and what is archive_moce, archive_command, restore_command etcc........

  • @VV-ps8rt
    @VV-ps8rt 12 днів тому

    18:00 one doubt here, as fixed window counter may face double amount of requests for short period in case of bursts, that server may not able to handle it should be false right?

  • @joshbleijenberg4000
    @joshbleijenberg4000 16 днів тому

    If you would build a tinder like application with chat function and recommendation system. Which database would you choose and why

  • @jirehla-ab1671
    @jirehla-ab1671 19 днів тому

    can I run pgbouncer without specifying the default database postgres? like leaving dbname empty? what if I set dbname = * wildcard?

  • @daniele.materia
    @daniele.materia 21 день тому

    Perfect video!

  • @azharuddin6096
    @azharuddin6096 23 дні тому

    Hi, really like your content. The only question I have is that in the cache, does user_id refers to the id of the person who made the tweet? Tell me if I'm getting this right: Whenever a user wants retrieve newsfeed we get ids of all the users that this particular user follows from graph database, then use those ids to pull out the tweet_ids that corresponds to those user_ids (so that we only pull tweets were made by the users that this user is following) from the newsfeed cache, then pull out user info from user cache and finally use tweets_id to pull out tweets data from tweets cache. Is this how it works? Would really appreciate your reply! I'm really confused about the mapping between tweet_id and user_id, does the user_id refers to the id of the user who made the tweet?

  • @sdamoul
    @sdamoul 27 днів тому

    Excellent

  • @davidzeng3807
    @davidzeng3807 28 днів тому

    pg_ctl: could not open PID file "/tmp/publication_db/postmaster.pid": Permission denied i changing owner to postgres already but still have errors

  • @ericgestopa6420
    @ericgestopa6420 29 днів тому

    does this replication works in version 10, too?

  • @gabrielosorio4908
    @gabrielosorio4908 Місяць тому

    This is amazing content, thank you very much, won another subscriber

  • @zfarahx
    @zfarahx Місяць тому

    That was great, thanks!

  • @dnyandeep11
    @dnyandeep11 Місяць тому

    vow hatsoff you have explianed too good

  • @alexgusev8118
    @alexgusev8118 Місяць тому

    75+ are not old, they are senior 😁

  • @mahditayeb1046
    @mahditayeb1046 Місяць тому

    incredibilly well done tutorial. keep up the good work!

  • @ButchHammer
    @ButchHammer Місяць тому

    Thank you for this video. It makes me more confident to join my new team !

  • @TechieTech-gx2kd
    @TechieTech-gx2kd Місяць тому

    01:52 are you referring to the size of the table > 200 GB or was it the response time 200ms, because if it was size then its contradictory to your statement on size of postgres table with 8KB block size can't be crossing 32GB in size.

  • @okokok840
    @okokok840 Місяць тому

    comeback pls goddddddddddddddddddddddddddddddddddd

  • @eli1801
    @eli1801 Місяць тому

    two Spanish students owe you our database project score

  • @ViktorZavadskyi
    @ViktorZavadskyi Місяць тому

    Best play at 1.75 speed =)

  • @tuyetlanvu
    @tuyetlanvu Місяць тому

    Thank you so much for the effort you put into this video! Your explanation is incredible and the graphic is easy to understand 😊. I instantly subscribed.

  • @okokok840
    @okokok840 Місяць тому

    comeback pls goddddddddddddddddddddddddddddddddddd

  • @ekonurmuhrodin1187
    @ekonurmuhrodin1187 Місяць тому

    amazing videos, Thanks very clear and helpfull

  • @bokistotel
    @bokistotel Місяць тому

    I understand this could be beneficial to READS, but why is beneficial to WRITES ?

  • @customraspi
    @customraspi Місяць тому

    you forgot to mention columnar databases for high performance analytics

  • @allan801
    @allan801 Місяць тому

    Sorry, this design is not best practice. You have 3 to 5 seconds to process a payment request and if that response is not delivered it is reversed, you don't use idempotency or retries to try to get an approval, if it was not approved in the initial attempt time window it is dead. Maybe this design works for b2b payments where you control the clients attempts, but it does work when you are servicing a live customer waiting. But your design would work for things like account creation or something else, just mot money movement when a live customer is involved.

  • @Vick0xD
    @Vick0xD Місяць тому

    Marvelous video!! Thank you!

  • @aswaththamanathimurugan6094
    @aswaththamanathimurugan6094 Місяць тому

    Please do it for collection too

  • @emilyedgars7072
    @emilyedgars7072 2 місяці тому

    Best video!! Explained everything I learned in 4 months in 24 mins

  • @franciscos.2301
    @franciscos.2301 2 місяці тому

    gj copying Fireship's visual style

  • @adib-enc
    @adib-enc 2 місяці тому

    Good content, thank you very much

  • @AzizHe01
    @AzizHe01 2 місяці тому

    Great video! Where do you make your slides?

  • @bobobob1230
    @bobobob1230 2 місяці тому

    pretty good video, great diagram usage, maybe spend more time on index

  • @swaniketchowdhury
    @swaniketchowdhury 2 місяці тому

    What if after hasing for a server and a key, the hash value is the same, i.e, it refers to the same position in the circle?

  • @ng.manisha
    @ng.manisha 2 місяці тому

    Great video. Could you please share a link to the final design diagram as well, and if possible api design and db model? That would really clear major system design concepts

  • @vineetbadoni
    @vineetbadoni 2 місяці тому

    Do we have the SQL script? DDLs

  • @user-iq6pf9in4d
    @user-iq6pf9in4d 2 місяці тому

    i am getting error Error: Could not find or load main class org.apache.solr.util.SimplePostTool . please i searched across internet and found nothing to fix this error. please help

  • @ravindranaths513
    @ravindranaths513 2 місяці тому

    Could you please make a video on Wide column vs column family vs columnar vs column oriented DBs

  • @Optimus_Prime_69
    @Optimus_Prime_69 2 місяці тому

    Thanks for this informative video

  • @danilsyah4108
    @danilsyah4108 2 місяці тому

    My question, if I have server on premise with cpu 8 core , and ram 32Gb, how to recommend tuning mysql , thanks a lot

  • @hamzazahidulislam3490
    @hamzazahidulislam3490 2 місяці тому

    Thanks :)

  • @Delicatamente
    @Delicatamente 2 місяці тому

    man you are awesome! thank you!

  • @tzhynt
    @tzhynt 3 місяці тому

    Thanks for your useful content!!

  • @user-lp3wb5su7c
    @user-lp3wb5su7c 3 місяці тому

    this is really useful video, thank you

  • @CASLOAcademy
    @CASLOAcademy 3 місяці тому

    Good stuff! Congrats and thank you

  • @RajdeepBiswasInd
    @RajdeepBiswasInd 3 місяці тому

    Very good and relevant explanation. Just edit the video and add the HLD.

  • @MarkJones
    @MarkJones 3 місяці тому

    DDL statements seem to flow thru on PGv14. At least our replica has changes that were made to the schema from our prod db.

  • @mousely76
    @mousely76 3 місяці тому

    17:42 i love that sql injection in the 3rd id

  • @KuyaJeffGamingChannelOfficial
    @KuyaJeffGamingChannelOfficial 3 місяці тому

    @high-performance programming, on 15:03 of your video. how can I enter in pgpool.conf (backend_data_directory0) the path of the “data” folder of my pgsql if it is in windows environment? I am your one of your student in udemy.

  • @Delicatamente
    @Delicatamente 3 місяці тому

    Best ever. This is so excellently structured and summarize. thank you agaiN!