- Spring Cloud Connectors - Connectors to PAAS services to scale new nodes
- Heroku
- Cloud Foundry
- Spring Cloud Bus - Event Bus (message queue)
- Spring Cloud Netflix (= Spring Cloud Netflix Stack) - The central part of the application consists of multiple components (Provided by Netflix)
- Archaius - Centalized configuration (like Spring Cloud Config but with Netflix technology)
- Zuul - Proxy server with virtual paths each pointing to a specifc service which can be executed in multiple instances: Central Path Configuration so that the user doesn't recognize changes
- Hystrix - Resilience Framework (Used with Ribbon + Feign where Hystrix is the core): A Switch that points to another instance (or throws an error when no other instance is available) when the requested instance throws an error and pauses requests to the requested instance for an amount of time (prevents deadlocks or unlimited
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- Current Date as Timestamp | |
CURRENT_TIMESTAMP | |
-- Current Date as Date | |
SYSDATE | |
-- Insert multiple rows | |
insert into countries select rownum, 'Name'||rownum from dual connect by rownum <= 1000000; | |
-- Delete all rows from a table |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Show a preview of the selected method/class: "Quick Definition Lookup" | |
Ctrl + Shift + I | |
# Switch to another open tab | |
Ctrl + Tab | |
# Close a specific tab within this Switcher (Ctrl + Tab) | |
Choose tab in Switcher > Backspace or Delete | |
# Evaluate Expression (in a dialog) |
DockerEE Basic - 80 Euro pro Maschine
Storage Driver
- Debian (Default): AUFS
- CentOS (Default): Device Mapper
Docker Datacenter
- Build Pipeline
- Zugriffskontrolle
User Space vs. Kernel Space
- User Space = User + Prozesse + Libraries
- Kernel Space = Kernel + Driver + Hardware
- API through System Calls and Signals provided by glibc (C Library)
System Call vs. Signal
- System Call = API call from a program to the kernel
- Signal = An Event like SIGTERM or SIGKILL that interrupts the programs control flow
Static linked vs. Dynamically linked
- Sidecar - Process that encapsulates required technologies (e.g. logging, monitoring, service discovery, etc.) in the microservices environment and makes them available to microservices that are not able to use those technologies natively
- Immutable Server -
- Zookeeper - https://zookeeper.apache.org/ - Provides configs in a hierarchical key-value store that is replicated and synchronized across large distributed systems.
- etcd - https://github.com/coreos/etcd - Like Zookeeper. Distributed reliable key-value store for the most critical data of a distributed system. Provides a REST API. It is possible to do locking in a distributed system with it.
- Spring Cloud Config - Provides a REST API. Config files can be based in a Git repo. The config data can be encrypted (e.g. for passwords in config files)
Source: https://www.youtube.com/watch?v=5WXYw4J4QOU
POST
,GET
,PUT
,DELETE
!= CRUD- no verbs -> just nouns for Resources:
/applications
or/applications/123
- Possible Responses: Collection of Resources (e.g. with Links) or One instance of a Resource
- Keep your API course grained to be scaleble to future requirements
- For Resources: Be as specific as possible:
/customers
vs./newsletter-customers
and/registered-customers
PUT
for Create: Can be used when the Client has the ability to create an identifier for the Resource himself. But it has to contain a full replacement of the dataset:PUT /applications/123
Source: https://www.youtube.com/watch?v=5WXYw4J4QOU
POST
,GET
,PUT
,DELETE
!= CRUD- no verbs -> just nouns for Resources:
/applications
or/applications/123
- Possible Responses: Collection of Resources (e.g. with Links) or One instance of a Resource
- Keep your API course grained to be scaleble to future requirements
- For Resources: Be as specific as possible:
/customers
vs./newsletter-customers
and/registered-customers
PUT
for Create: Can be used when the Client has the ability to create an identifier for the Resource himself. But it has to contain a full replacement of the dataset:PUT /applications/123
NewerOlder