| from flask import Flask, jsonify |
| import time |
| import os |
| from datetime import datetime |
| from zoneinfo import ZoneInfo |
|
|
| app = Flask(__name__) |
|
|
| data_blob = None |
| created_at = None |
|
|
|
|
| def generate_data(size_mb=5120): |
| global data_blob, created_at |
|
|
| print(f"[+] Generating ~{size_mb} MB random data in memory...") |
|
|
| start = time.time() |
|
|
| data_blob = os.urandom(size_mb * 1024 * 1024) |
|
|
| created_at = datetime.now(ZoneInfo("Asia/Kolkata")) |
|
|
| end = time.time() |
|
|
| print(f"[β] Done in {round(end - start, 2)} sec") |
| print(f"[β] Size: {round(len(data_blob) / (1024**3), 2)} GB") |
| print(f"[β] Created at (IST): {created_at}") |
|
|
|
|
| @app.route("/") |
| def home(): |
| return "Server running π" |
|
|
|
|
| @app.route("/get") |
| def get_info(): |
| global data_blob, created_at |
|
|
| if data_blob is None: |
| return jsonify({"status": "no data in memory"}) |
|
|
| current_size = len(data_blob) |
|
|
| return jsonify({ |
| "size_bytes": current_size, |
| "size_mb": round(current_size / (1024 * 1024), 2), |
| "size_gb": round(current_size / (1024**3), 2), |
| "created_at_iso": created_at.isoformat(), |
| "created_at_readable": created_at.strftime('%Y-%m-%d %H:%M:%S %Z') |
| }) |
|
|
|
|
| if __name__ == "__main__": |
| generate_data(5120) |
| app.run(host="0.0.0.0", port=7860) |