<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Elias Oliveira</title>
    <description>The latest articles on DEV Community by Elias Oliveira (@eliasoliedev).</description>
    <link>https://dev.to/eliasoliedev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3703187%2F88a7fbc1-79ef-42f5-8449-a682b3c63a4c.png</url>
      <title>DEV Community: Elias Oliveira</title>
      <link>https://dev.to/eliasoliedev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/eliasoliedev"/>
    <language>en</language>
    <item>
      <title>I asked devs to crash my App. Here's what happened in the first 24h (DDoS, Billing Limits &amp; Error 1101)</title>
      <dc:creator>Elias Oliveira</dc:creator>
      <pubDate>Sat, 10 Jan 2026 21:27:38 +0000</pubDate>
      <link>https://dev.to/eliasoliedev/i-asked-devs-to-crash-my-app-heres-what-happened-in-the-first-24h-ddos-billing-limits-error-30g9</link>
      <guid>https://dev.to/eliasoliedev/i-asked-devs-to-crash-my-app-heres-what-happened-in-the-first-24h-ddos-billing-limits-error-30g9</guid>
      <description>&lt;p&gt;Yesterday, I posted here asking the community to stress test &lt;strong&gt;LShort&lt;/strong&gt;, my new Edge-based link shortener. I built a 3D "War Room" dashboard to visualize the traffic and challenged you to crash it.&lt;/p&gt;

&lt;p&gt;Well, the first 24 hours were intense. I learned lessons that only real-world traffic (and a bit of mischief) could teach.&lt;/p&gt;

&lt;p&gt;Here is the battle report:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The "Jaguarão" Attack (and my unsuspecting Fiancée)
&lt;/h3&gt;

&lt;p&gt;The first spike happened at a terrible time. I was on a video call with my fiancée, trying to pay attention to her, when I saw my War Room dashboard start flashing frantically in the corner of my eye.&lt;/p&gt;

&lt;p&gt;Someone from &lt;strong&gt;Jaguarão (a city in southern Brazil)&lt;/strong&gt; decided to test the infrastructure properly. It was a brief but concentrated attack: around &lt;strong&gt;4,000 requests in a few seconds&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Technical Surprise:&lt;/strong&gt;&lt;br&gt;
Ironically, as the hit counter went vertical, the average latency actually &lt;strong&gt;dropped&lt;/strong&gt;.&lt;br&gt;
This validated the architecture: The &lt;em&gt;Cloudflare Workers + Upstash Redis&lt;/em&gt; combo works incredibly well on "hot paths". The more you hit the same link, the faster the cache serves it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Failure (My Wallet):&lt;/strong&gt;&lt;br&gt;
The shortener held up, but the backend service powering the War Room (hosted on &lt;strong&gt;Railway&lt;/strong&gt;) hit the &lt;strong&gt;Billing Hard Limit&lt;/strong&gt; I had set (it shares the budget with my other hobby projects). Railway, protecting my credit card, paused the service. A quick adjustment to the spending limit brought it back, but it was a good reminder: sometimes the bottleneck isn't code, it's the budget configuration.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Error 1101 and The End of the Free Tier
&lt;/h3&gt;

&lt;p&gt;Everything seemed calm until around 3:00 PM today.&lt;/p&gt;

&lt;p&gt;The accumulated traffic from Reddit, TabNews, and Dev.to finally took its toll. My &lt;strong&gt;Cloudflare Workers free tier quota&lt;/strong&gt; was completely pulverized.&lt;/p&gt;

&lt;p&gt;Suddenly, users started seeing the dreaded &lt;strong&gt;Error 1101&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I had to act fast, upgrade the plan, and scale up the worker limits. A few minutes later, systems were 100% operational again.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Key Takeaways
&lt;/h3&gt;

&lt;p&gt;This stress test proved that separating responsibilities was the right call:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Redirects (Critical Path):&lt;/strong&gt; Running on the Edge allows it to tank heavy loads (as long as the bill is paid).&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Analytics (Async):&lt;/strong&gt; Decoupling the heavy lifting of data processing saved the redirection engine from crashing during the 4k RPS spike.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In a real-world scenario, traffic would be distributed across many links rather than a DoS on a single URL, but seeing the system scale (and fail exactly where the limits were set) was invaluable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Challenge is still on!&lt;/strong&gt;&lt;br&gt;
Now that I've upgraded the plans and adjusted the limits, the system is ready for Round 2.&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;Stress Test Link:&lt;/strong&gt; &lt;a href="https://lshort.sh/ITlPomy" rel="noopener noreferrer"&gt;https://lshort.sh/ITlPomy&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks to everyone who participated in the "destruction" so far. Waiting for the next chapter! 🚀&lt;/p&gt;

</description>
      <category>security</category>
      <category>testing</category>
      <category>showdev</category>
      <category>devops</category>
    </item>
    <item>
      <title>Try crash my app! I built a Link Shortener on the Edge. Can you help me crash it? (Live Dashboard)</title>
      <dc:creator>Elias Oliveira</dc:creator>
      <pubDate>Fri, 09 Jan 2026 21:54:55 +0000</pubDate>
      <link>https://dev.to/eliasoliedev/i-built-a-link-shortener-on-the-edge-can-you-help-me-crash-it-live-dashboard-1ci0</link>
      <guid>https://dev.to/eliasoliedev/i-built-a-link-shortener-on-the-edge-can-you-help-me-crash-it-live-dashboard-1ci0</guid>
      <description>&lt;p&gt;Hey devs! 👋&lt;/p&gt;

&lt;p&gt;I've been working on &lt;strong&gt;LShort&lt;/strong&gt;, a link shortener designed with two main goals: &lt;strong&gt;extreme speed&lt;/strong&gt; and &lt;strong&gt;URL hygiene&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Most shorteners either add unnecessary latency or blindly strip all parameters (breaking the destination site) or keep everything (keeping the tracking garbage).&lt;/p&gt;

&lt;h3&gt;
  
  
  ⚡ The Concept: Logic on the Edge
&lt;/h3&gt;

&lt;p&gt;I moved the redirection logic entirely to the &lt;strong&gt;Edge&lt;/strong&gt;. This means:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Low Latency:&lt;/strong&gt; The redirect happens as close to the user as possible, minimizing TTFB (Time to First Byte).&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Smart Cleaning:&lt;/strong&gt; It removes visual pollution (like excessive tracking params) but intelligently preserves the functional parameters that the destination app actually needs to work.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  🧪 The Stress Test (Help needed!)
&lt;/h3&gt;

&lt;p&gt;To validate the architecture, I'm running a public &lt;strong&gt;Stress Test&lt;/strong&gt; right now.&lt;/p&gt;

&lt;p&gt;I built a "War Room" dashboard to visualize requests in real-time on a 3D globe, tracking latency and RPS (Requests Per Second) globally.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I need your help to generate traffic.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;Check the Live Dashboard / Test the Tool:&lt;/strong&gt; &lt;a href="https://lshort.sh/ITlPomy" rel="noopener noreferrer"&gt;https://lshort.sh/ITlPomy&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  🛠️ What to look for?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Speed:&lt;/strong&gt; Does the redirect feel instant from your location?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Dashboard:&lt;/strong&gt; Watch your hit appear on the globe in real-time.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I'm eager to see how the infrastructure handles a spike in traffic. If it breaks, I learn. If it survives, I celebrate.&lt;/p&gt;

&lt;p&gt;Let me know your feedback (or if you found any bugs) in the comments below!&lt;/p&gt;

&lt;p&gt;Happy coding! 🚀&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>performance</category>
      <category>showdev</category>
      <category>testing</category>
    </item>
  </channel>
</rss>
