# Anti-patterns

## Architecture by implication

_**Anti-pattern: if you are not thinking about architecture when it is needed.**_

Sync vs async?

![](https://415484505-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxtoAXZwwOc4XGto8vb%2Fuploads%2Frspqd0wsUomDP4XHo71v%2FScreenshot%202022-05-04%20at%2009.08.55.png?alt=media\&token=2d47960b-3e34-4e4d-aa39-f65c5d52b482)

Orchestration vs choreography

<img src="https://415484505-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LxtoAXZwwOc4XGto8vb%2Fuploads%2F0SpBjucoqGlDOZDBUSef%2FScreenshot%202022-05-04%20at%2009.10.13.png?alt=media&#x26;token=3100568a-bf35-4c5f-b9f0-f958d017e0ca" alt="" data-size="original">

## Open session in View

[More details](https://vladmihalcea.com/the-open-session-in-view-anti-pattern/)

[Spring Boot Best Practice – disable OSIV to start receiving LazyInitializationException warnings again](https://codesoapbox.dev/spring-boot-best-practice-disable-osiv-to-start-receiving-lazyinitializationexception-warnings-again/)
