Knowledgebase

Java, .NET and Ruby: Everything That Matters, Briefly Print

  • backenddevelopment, backend, performance, security, webhosting, guide, howto, solution
  • 0

The summary.

THESE FRAMEWORKS TRADE FLEXIBILITY FOR CONSISTENCY

Strong conventions, dependency injection, and everything included. That suits large teams and long-lived systems, and is heavier than small projects need.

THE SAME QUERY-PER-ITEM FAULT APPEARS IN EVERY ORM

Whatever the language, accessing a relationship per item in a loop produces a query per item. Fetch explicitly, and monitor query counts.

Use projections returning only the fields needed.

BE CAREFUL WITH LAZY LOADING OUTSIDE A TRANSACTION

And with relationships configured to load eagerly, which fetch far more than intended.

SECURE HEALTH, METRICS AND ADMINISTRATIVE ENDPOINTS

They reveal internal detail that assists an attacker.

EXTERNALISE EVERYTHING THAT DIFFERS BETWEEN ENVIRONMENTS

Particularly credentials, and use per-environment profiles rather than conditionals in code.

TEST SLICES RATHER THAN THE WHOLE APPLICATION CONTEXT

Full-context tests are slow, and slow tests are not run.

CHECK WHAT RUNTIME AND PROCESS MODEL YOUR HOSTING SUPPORTS BEFORE COMMITTING

All of these need persistent processes, which shared hosting frequently does not provide.


Was this answer helpful?
Back

Are you happy with your experience? Leave us a review on Trustpilot.


Trustpilot