# remove php5 modules
apt-get autoremove --purge php5-*
# add php-7.0 source list by [Ondřej Surý](https://github.com/oerdnj)
add-apt-repository ppa:ondrej/php
# Update index
apt-get update
# Install php7.0-fpm with needed extensions
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
<?php | |
/** | |
* This is free and unencumbered software released into the public domain. | |
* | |
* Anyone is free to copy, modify, publish, use, compile, sell, or | |
* distribute this software, either in source code form or as a compiled | |
* binary, for any purpose, commercial or non-commercial, and by any | |
* means. | |
* |
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
testdb=> SELECT name,setting,unit FROM pg_settings; | |
name | setting | unit | |
---------------------------------+---------------------------------------------+------ | |
allow_system_table_mods | off | | |
application_name | psql | | |
archive_command | /etc/rds/dbbin/pgscripts/rds_wal_archive %p | | |
archive_mode | on | | |
archive_timeout | 300 | s | |
array_nulls | on | | |
authentication_timeout | 60 | s |
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
'use strict'; | |
var AWS = require('aws-sdk'); | |
var S3 = new AWS.S3(); | |
var readline = require('readline'); | |
exports.handler = function (event, context) { | |
//Get S3 file bucket and name | |
//Make sure to loop through event.Records, don't assume there is only 1 in production!!! | |
var bucket = event.Records[0].s3.bucket.name; | |
var key = event.Records[0].s3.object.key; |
- Create
UNLOGGED
table. This reduces the amount of data written to persistent storage by up to 2x. - Set
WITH (autovacuum_enabled=false)
on the table. This saves CPU time and IO bandwidth on useless vacuuming of the table (since we neverDELETE
orUPDATE
the table). - Insert rows with
COPY FROM STDIN
. This is the fastest possible approach to insert rows into table. - Minimize the number of indexes in the table, since they slow down inserts. Usually an index
on
time timestamp with time zone
is enough. - Add
synchronous_commit = off
topostgresql.conf
. - Use table inheritance for fast removal of old data:
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
public final class RuntimeAnnotations { | |
private static final Constructor<?> AnnotationInvocationHandler_constructor; | |
private static final Constructor<?> AnnotationData_constructor; | |
private static final Method Class_annotationData; | |
private static final Field Class_classRedefinedCount; | |
private static final Field AnnotationData_annotations; | |
private static final Field AnnotationData_declaredAnotations; | |
private static final Method Atomic_casAnnotationData; | |
private static final Class<?> Atomic_class; |
In the previous episodes we implemented the fundamental components of a tyical web application: "static" content and "dynamic" APIs. For each component, we´ve been using the most out of AWS services, such as S3, CloudFront, Lambda and API gateway. But so far we have only been working with public resources. Let us now learn more about user authentication and authorization in two very important services: AWS Identity and Access Management and Amazon Cognito. Even more importantly, let us integrate that within our React application ;)
- Serverless Architecture Review
- Introduction to Amazon Cognito
- Cognito User Pools
- Cognito Federated Identities
- Cognito Identity SDK
- AWS SDKs
- Integrating with Javascript and React
- Implementing Authentication Flows