인류 잡음
Credulous at best, your desire to believe in
Angels in the hearts of men
내가 an issue페이지를 열었을 때, 이번 주의 시작은 펑 하는 소리가 아니라 오열이었다. 매주 분류 회의에서 백인 다비다프는 이 점을 알아차렸다.나는 줄곧 이 오류를 복제하려고 시도했지만, 페드로처럼 아무리 노력해도 복제할 수 없었다.소프트웨어 개발이 이렇게 이상할 수도 있지만 불행하게도 복제되지 않으면 무형의 복구는 상당한 도전을 가져올 것이다.(편집: 금요일까지 매주 회의를 배치하는 동안 우리는 더 이상 문제가 아니라는 인상을 받았다.)
이어서 우리는 신속한 마이크로 서비스 회의를 열어 최신 상태와 마이크로 서비스를 완전히 사용하는 데 필요한 the massive changes에 대해 토론했다.잠시 후에 나는 이 문제를 상세하게 토론할 것이지만, 시간이 똑딱거리고 있으니, 오늘부터 계산하면 t에서 2주일을 뺀다.
Josue와 나는 Pedro와 빠른 만남을 가졌고 his latest PR과 관련된 타자 문제를 토론했다. 이 소프트웨어는 우리가 망원경 홈페이지에서 사용하는 동적 이미지 구성 요소를 업데이트했다.회의가 끝날 때 MUI Types을 실시하는 것을 건의합니다.나는 typescript와NextJS에 대한 지식을 더 많이 알고 싶지만, 나는 현재 백엔드에 관심을 갖는 것이 괜찮다고 생각한다.
회의 후에 Josue와 나는 PR from Davedalf을 되돌아보고 로컬에서 테스트하지 말라는 좋은 조언을 따랐다. 로컬에서 테스트할 수 있는 것이 아니라 코드와 테스트를 읽을 수 있기 때문이다.code explanations의 중요성을 과소평가하기 어렵다.
나는 또한 Yuan's latest PR을 되돌아보았는데, 이것은 진정한 숨겨진 네비게이션 표시줄을 추가하여 우리 사이트의 초기에 나타냈지만, 사용자가 아래로 굴러가는 것을 보여 주었다.내가 지적한 것은 아마도 이 문제가 이번 홍보와 다른 새로 상륙한 듀크 홍보의 충돌을 초래했고 후자는 스크롤 캡처를 증가시켰을 것이다.불행히도 나는 결함을 지적하는 것 외에 아는 것이 아직 많지 않다.꿈속에서 살다.
마찬가지로 나도 Huy's PR에 나의 생각(예를 들어 그들의 생각)을 남겼는데 이것은 망원경의 저자 부분에 닿았다.나는 또 Dave's PRs 중의 또 다른 것을 되돌아봤다. 조수 박사가 다시 가입한 것은 매우 도움이 되었다. 왜냐하면 나는 그가 최근에 내놓은 많은 코드를 거의 이해하지 못했기 때문이다.누군가가 너를 도와 일을 분명하게 말하는 것도 도움이 된다.
나는 또한 Dave와 간단한 만남을 가졌는데, 그가 몇몇 테스트에서 사용자를 users microsoft 서비스에 발표하려고 시도했을 때 겪은 문제들에 대해 토론했다.조소 의사가 또다시 이날을 살렸고 얼마 지나지 않아 a fix PR명이 도착했다.사실이 증명하듯이, 우리의 백엔드는 우리의 노드 획득 요청을 모의하여 데이터가 마이크로 서비스에 전송되지 못하게 했다.
마지막 밤, 나는 이상한 코드의 탈출 오류에 관한 some thoughts편의 글을 남겼는데, 너의 또 다른 블로그는 이 오류를 쉽게 포착했다.나는 이전에 백엔드 소독제를 사용한 적이 있기 때문에 다행히도 나는 문제의 원인에 대해 약간의 이해를 가지고 있다.
금요일, 이번 주는 끝났지만 모든 PRs를 배치하고 착륙시켜야 합니다.다음은 제가 승인한 일련의 홍보 자료입니다.
사용자 마이크로 서비스
우리는 마침내 a fix for our paginated GET route에 도착했다. (나는 이 일을 되돌아보려고 최선을 다했다.) 부인할 수 없는 것은 나로 하여금 며칠 동안 긴장하게 했다.이전에 우리가 겪은 문제는 내가 만든 페이지 나누기 GET 라우트는 ID가 0에서 시작하는 사용자에게만 적용된다는 것입니다.우리는 우리의 사용자 ID를 산열했기 때문에, 이것은 분명히 해결 방안이 아니다.이 솔루션은 실제적으로 매우 똑똑하다. 응답 헤더에서 정지된 위치를 추적하고 삽입하는 데 의존하여 후속 요청이 응답 헤더에 모든 정보를 포함하고 어디에서 계속될 수 있도록 한다.
const query = await db
.collection('users')
.orderBy('id')
.startAt(userToStartAt)
.limit(perPage)
.get();
및.let query = db.orderBy(documentId()).limit(perPage);
// If we were given a user ID to start after, use that document path to add .startAfter()
if (startAfter) {
query = query.startAfter(startAfter);
}
const snapshot = await query.get();
const users = snapshot.docs.map((doc) => doc.data());
// Add paging link header if necessary, so caller can request next page
addNextLinkHeader(res, users, perPage);
module.exports.addNextLinkHeader = function (res, users, perPage) {
// If there aren't any results, there's no "next" page to get
if (!users.length) {
return;
}
// Similarly, if the number of users is less than the perPage size,
// don't bother adding a next link, since there aren't going to be more.
if (users.length < perPage) {
return;
}
// Get the id of the last user in this page of results
const lastUser = users[users.length - 1];
const lastId = lastUser.id;
// Construct the body of the header, giving the URI to use for the next page:
// '<https://api.telescope.cdot.systems/v1/users?start_after=6Xoj0UXOW3&per_page=100>; rel="next"'
const link = new LinkHeader();
link.refs.push({ uri: `${USERS_URL}?start_after=${lastId}&per_page=${perPage}`, rel: 'next' });
res.set('Link', link.toString());
};
이렇게 똑똑한 복구는 놀랍다.Josue와 I wrote a tool은 이 PR을 여러 번 보는 것 외에 Planet CDOT Feed List(망원경 사용자 및 블로그 정보 목록)의 사용자를 내보내는 데 도움을 줍니다.그것사실 결과는 조금도 나쁘지 않다!코드는 읽기 쉽고 유지 보수가 가능하며 가장 중요한 것은 간단하다.그것은 몇 차례의 심사를 거쳤다.
나는 또한 초보적인 토론과 연구를 시작하여 사용자의 마이크로 서비스에 적당한 e2e 테스트를 실시하고 우리 자신의 Redis 캐시를 실현했다.다음 주 금요일에 이 방면에 관한 보도가 더 많이 있을 것이다.
전반적으로 말하자면, 이것은 아주 좋은 한 주이다. 나는 많은 시간을 복습하고, 물건을 평론하고, 회의를 열었다.
다른 보다 개인화된 뉴스에서
Reference
이 문제에 관하여(인류 잡음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/chrispinkney/human-murmuration-4h8l텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)