Advertisement
dev017

perl web

Jul 29th, 2023 (edited)
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.32 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. use strict;
  4. use warnings;
  5.  
  6. sub is_overloaded {
  7.     my $current_load = get_current_load();
  8.    
  9.     if ($current_load > 80) {   --defina o limite.
  10.         return 1;
  11.     }
  12.    
  13.     return 0;
  14. }
  15.  
  16. if (is_overloaded()) {
  17.     display_loading_page();
  18.    
  19.     while (is_overloaded()) {
  20.         sleep(5);
  21.        
  22.         if (!is_overloaded()) {
  23.             last;
  24.         }
  25.        
  26.         print "Site ainda está sobrecarregado. Aguarde...\n";
  27.     }
  28.    
  29.     resume_normal_operation();
  30. }
  31. else {
  32.     perform_regular_operations();
  33. }
  34.  
  35. sub get_current_load {
  36.     my $load = int(rand(100));
  37.     return $load;
  38. }
  39.  
  40. sub display_loading_page {
  41.     print "Carregando... Por favor, aguarde.\n";
  42.     sub display_loading_page {
  43.     print "Content-Type: text/html\n\n";
  44.    
  45.     print <<HTML;
  46. <!DOCTYPE html>
  47. <html>
  48. <head>
  49.     <title>Carregando...</title>
  50. </head>
  51. <body>
  52.     <h1>Carregando...</h1>
  53.     <!-- de sua preferência... -->
  54. </body>
  55. </html>
  56.  
  57. HTML
  58. }
  59.  
  60. display_loading_page();
  61. }
  62.  
  63. sub resume_normal_operation {
  64.     print "Sobrecarga resolvida. Retomando operações normais.\n";
  65.     --aqui você deve adicionar seu código fonte.
  66. }
  67.  
  68. sub perform_regular_operations {
  69.     print "Executando operações regulares...\n";
  70.     -- você preenche aqui, não tenho idéia de como terminar lol
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement