Go with ❤️로 작성된 Express.js 스타일의 웹 프레임워크인 Fiber에 오신 것을 환영합니다.

9473 단어 nodefibertutorialgo

소개



안녕하세요, 월드입니다! 👋 오늘 우리는 Go에서 젊은(그러나 야심찬) Fiber 웹 프레임워크를 다루고 이것이 "X와 같은 또 다른 새로운 프레임워크"가 아니라 빠른 웹 애플리케이션을 만들기 위한 훌륭한 도구라는 것을 이해할 것입니다.

📌 It will be a review article, dive into Fiber we will start further.



목차


  • What is Fiber and why is it so good?
  • Useful information to start working with Fiber
  • Main features
  • Benchmarks
  • Project assistance

  • Fiber는 무엇이며 왜 좋은가요?



    GitHub 리포지토리에서 공식README을 따르십시오.

    Fiber is an Express.js styled HTTP web framework implementation running on Fasthttp, the fastest HTTP engine for Go (Golang). The package make use of similar framework convention as they are in Express.



    그리고 나는 그것에 동의하는 경향이 있습니다. Express.js (나처럼)을 사용하여 Node.js에서 웹 애플리케이션을 구현한 적이 있다면 많은 방법과 원칙이 매우 일반적으로 보일 것입니다!

    예를 들어 다음은 Express.js의 표준Hello, World!입니다.

    // ...
    
    const app = express()
    
    app.get('/', (req, res) => res.send('Hello, World!'))
    
    app.listen(8080)
    


    Fiber의 유사한 예:

    // ...
    
    app := fiber.New()
    
    app.Get("/", func(c *fiber.Ctx) {
      c.Send("Hello, World!")
    })
    
    app.Listen(8080)
    


    Fiber 작업을 시작하는 데 유용한 정보



    실제로 시작하는 데 필요한 것은 official documentation 입니다! 😉

    웹 프레임워크인 Fiber는 새로운 gopher이지만 JavaScript에 대한 경험이 있는 사용자를 위해 웹 애플리케이션의 백엔드 생성을 보다 쉽게 ​​시작할 수 있도록 미니멀리즘의 아이디어로 만들어졌습니다.

    저자 자신은 이렇게 말합니다.

    People switching from Node.js to Go often end up in a bad learning curve to start building their webapps, this project is meant to ease things up for fast development, but with zero memory allocation and performance in mind.





    주요 특징


  • 속도 및 낮은 메모리 사용량에 최적화됨
  • 신속한 서버측 프로그래밍
  • 매개변수를 사용한 손쉬운 라우팅
  • 사용자 정의 접두사가 있는 정적 파일
  • Next() 지원 미들웨어
  • Express API 끝점
  • Extended documentation

  • 프리포크 기능을 쉽게 활성화



    코드에서 Preforktrue로 설정하기만 하면 됩니다.

    // ...
    
    app := fiber.New()
    
    app.Prefork = true // enable prefork
    
    app.Get("/", func(c *fiber.Ctx) {
      c.Send(fmt.Sprintf("Hi, I'm worker #%v", os.Getpid()))
      // => Hi, I'm worker #16858
      // => Hi, I'm worker #16877
      // => Hi, I'm worker #16895
    })
    
    app.Listen(8080)
    


    프리포크가 뭐에요?



    프리포크 기능을 활성화하면 동일한 포트에서 수신 대기하는 여러 go 프로세스가 생성됩니다. Nginx에는 Socket Sharding에 대한 훌륭한 기사가 있습니다. 이 사진은 같은 기사에서 가져온 것입니다 👇



    ✨ 내가 가장 좋아하는 킬러 기능 ✨



    그리고 (저를 위한) 또 하나의 큰 기능은 모든 Fasthttp 메서드 및 속성에 대한 전체 액세스입니다(자세한 내용은 documentation 참조).

    Yeah, you didn't mishear! Fiber is extremely easy to use as Express.js and has everything under the hood that Fasthttp has now and will have in the future 🔥



    벤치마크 🤖



    Click here 모든 벤치마크 결과를 보려면 일부만 가져오겠습니다.
  • TechEmpower: JSON 직렬화


  • Go-Web: HTTP 파이프라이닝 활성화



  • 프로젝트 지원


  • 프로젝트에 GitHub Star을 추가합니다.
  • 프로젝트에 대한 트윗 .
  • README 및 API Docs을 다른 언어로 번역하는 데 도움이 됩니다.

  • ~의 사진



    [제목] Fiber Authors https://gofiber.io/
    [1]네이트 그랜트https://unsplash.com/photos/dFF8z3WH5FI

    추신



    이 블로그에서 이와 같은 기사를 더 원하시면 아래에 댓글을 달고 저를 구독하십시오. 감사! 😘

    그리고 물론 LiberaPay 에서 기부하여 저를 지원할 수 있습니다. 각 기부는 새로운 기사를 작성하고 커뮤니티를 위한 비영리 오픈 소스 프로젝트를 개발하는 데 사용됩니다.

    좋은 웹페이지 즐겨찾기