pythonbeginner

Fast JSON Serialisation with orjson

Use orjson for 5-10x faster JSON serialisation of large Python dicts, dataclasses, and NumPy arrays.

python
import orjson
import numpy as np
from datetime import datetime
from dataclasses import dataclass

@dataclass
class Record:
    id: int
    ts: datetime
    values: list[float]

records = [Record(i, datetime.utcnow(), list(np.random.rand(5))) for i in range(10)]

# orjson serialises dataclasses, datetime, numpy natively
data = orjson.dumps(records, option=orjson.OPT_SERIALIZE_DATACLASS)
print(data[:200])

parsed = orjson.loads(data)
print(len(parsed), 'records')

Use Cases

  • high-throughput serialisation
  • API responses
  • event logging

Tags

Related Snippets

Similar patterns you can reuse in the same workflow.