1. wrangler 설치
command line utility  - cloudflare worker 실행 가능

npm install -g wrangler

2. wrangler에서 cloudflare 로그인

wrangler login

그러면 브라우저 뜸. accept하면 됨.

cloudworker는 fetch라고 불리는 javascript function임.

코드를 수정하고 아래를 실행하면 바로 cloudflare 서버에서 publish됨.

npm run deploy

그냥 fetch() 함수임.

export default {
	async fetch(
		request: Request,
		env: Env,
		ctx: ExecutionContext
	): Promise<Response> {
		const url= new URL(request.url)
		if(url.pathname === "/"){
			return new Response(home,{
				headers:{
					"Content-Type":"text/html;charset=utf-8"
				}
			});
		}
		return new Response(null,{
			status: 404
		})
	},
};
// Request 유저가 이동할 url 같은 정보 읬음
// Env에서는 모든 perk를 받음. cloudflare worker에 DB추가 할 떄 사용 가능
// page 방문자 셀 수 있지.

23.3 Workers KV
clourflare는 SQL serverless database에서 작동함.
완전 SQL임.
dev,와 prod을 만들어보자.

//prod 용
wrangler kv:namespace create "view_coutner"
//view_counter는 DB 이름


//dev용
wrangler kv:namespace create --preview  "view_coutner"

그러면 아래처럼 나옴.
binding은 아무거나 해도 됨.

그리고 wrangler.toml에 가서 kv_namespaces를 추가해

23.4 Visit Counter


이 DB의 특징은 eventually consistent(eventual consistency)임.
엄청 많은 숫자의 요청 있으면 모든 업데이트 값이 다를 수 있다.
최종적으로는 마지막 업데이트와 같아진다는 뜻.
cloudflare network내에서 전파되기 때문에 이런 현상 생길 수 있다.

+ Recent posts