Blog Upptime
Ich hatte nun schon länger keinen Blogeintrag mehr gemacht. Aber ich habe immer versucht meine Infrasturktur auf den letzten Stand zu halten. Dieser Blog wird auf einem Kubernetes Cluster gehostet, das sollte jeder Node und gelegentlich auch die Deployments aktualisiert werden.
Wer ein bisschen geschaut hat, was sonst noch unter meinem Namen im Netz herumschwirrt, wird sicherlich auch meine Upptime Check auf Github gefunden haben. Dieses Zeigt ein düsteres Bild meines Blogs :-(
Familienkalender mit MagicMirror
Einen Familienkalender erstellen kann eine Herausforderung sein. Ich habe das komplizierteste Setup gewählt.
GraphQL Batching
Insgestamt ist GraphQL für mich meist schwierig verständlich. Schon alleine über Design von REST-Schnittstellen lässt sich lange streiten. Bei GraphQL scheint der grösste Wildwuchs zu herrschen.
Für ein Experiment, bei dem ich den fxa-content-server anbinden wollte, wurde ich mit einer sehr speziellen Art GraphQL Schnittstelle konfrontiert:
[
{
"operationName": "GetInitialMetricsState",
"variables": {
},
"query": "query GetInitialMetricsState {\n account {\n uid\n recoveryKey {\n exists\n estimatedSyncDeviceCount\n __typename\n }\n metricsEnabled\n emails {\n email\n isPrimary\n verified\n __typename\n }\n totp {\n exists\n verified\n __typename\n }\n __typename\n }\n}"
},
{
"operationName": "GetSessionIsValid",
"variables": {
"sessionToken": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
},
"query": "query GetSessionIsValid($sessionToken: String!) {\n isValidToken(sessionToken: $sessionToken)\n}"
}
]
Man beachte, dass die Queries in einem Array gepackt wurden. - Das nennt sich Query Batching. Beschrieben in Apollo GraphQL.