라우터 , ip , 서버 , IGW 개념 , 프록시와 리버스 프록시 , 타입스크립트 기본 타입 , 다이나믹 스코프란 무엇인가?, CSR SEO 관점으로 점수를 못얻는 이유
본문 바로가기

컴퓨터공부/ASAC 웹풀스택

라우터 , ip , 서버 , IGW 개념 , 프록시와 리버스 프록시 , 타입스크립트 기본 타입 , 다이나믹 스코프란 무엇인가?, CSR SEO 관점으로 점수를 못얻는 이유

by Life & study 2023. 9. 4.
반응형

라우터 , ip , 서버 , IGW 개념 , 프록시와 리버스 프록시 , 타입스크립트 기본 타입 , 다이나믹 스코프란 무엇인가?, CSR SEO 관점으로 점수를 못얻는 이유

라우터 , ip , 서버 , IGW 개념

 

 

프록시와 리버스 프록시

 

 

프록시 (Proxy):

클라이언트와 서버 사이에서 중개 역할을 하는 서버입니다.
클라이언트가 서버에 직접 요청을 보내는 대신, 프록시 서버가 대신 요청을 받아 서버에 전달하고 서버에서 받은 응답을 클라이언트에게 반환합니다.
주로 개인 정보 보호, 보안, 캐싱, 필터링 등의 목적으로 사용됩니다.
클라이언트가 요청을 하면 프록시 서버는 해당 요청을 처리하고, 클라이언트로부터 오는 요청의 출처 IP를 숨기는 역할을 할 수 있습니다.



리버스 프록시 (Reverse Proxy):

서버와 서버 사이에서 중개 역할을 하는 서버입니다.
클라이언트는 리버스 프록시 서버를 통해 서버에 요청을 보내며, 이 요청은 리버스 프록시 서버에서 적절한 백엔드 서버로 라우팅됩니다.
주로 로드 밸런싱, SSL 암호화, 보안, 웹 서버 캐싱, 애플리케이션 방화벽 등의 목적으로 사용됩니다.
리버스 프록시는 여러 백엔드 서버 간에 트래픽을 분산하고 클라이언트에 대한 응답을 조작하거나 필터링할 수 있습니다.
요약하면, 프록시는 클라이언트와 서버 사이에서 동작하여 클라이언트 요청을 서버로 전달하거나 서버의 응답을 클라이언트에게 반환하는 데 사용되며, 리버스 프록시는 클라이언트와 서버 사이에서 동작하여 요청을 적절한 서버로 라우팅하고 서버 응답을 클라이언트에게 반환하는 데 사용됩니다. 둘 다 네트워크 보안, 성능 최적화 및 부하 분산과 같은 다양한 용도로 사용됩니다.


 

'빌드' 란 무엇인가?

 

프로그래밍 언어에서 "빌드(Build)"는 

소스 코드 파일들을 실행 가능한 형태로 변환하는 과정을 말합니다. 빌드 과정은 일반적으로 다음과 같은 단계로 이루어집니다:

소스 코드 작성: 프로그래머가 원하는 기능을 구현하기 위해 소스 코드를 작성합니다. 

이 소스 코드는 텍스트 파일 형태로 작성됩니다.


컴파일(Compile): 컴파일러를 사용하여 소스 코드를 기계어나 중간 언어 등의 실행 가능한 형태로 변환합니다. 컴파일 단계에서는 문법 오류, 타입 오류 등을 검사하고, 기계어나 중간 언어로 번역됩니다.

 

링크(Link): 프로그램이 여러 개의 모듈이나 라이브러리에 의존하는 경우, 컴파일된 모듈들을 하나의 실행 파일로 결합시킵니다. 링크 단계에서는 각각의 모듈이 올바르게 연결되고 실행 가능한 형태가 되도록 합니다.

 

빌드(Build): 컴파일 및 링크와 같은 단계들을 포함하여 전체적인 빌드 과정을 의미합니다. 이 단계에서는 필요한 리소스 파일, 설정 파일 등도 포함시킬 수 있습니다.

 

 

타입스크립트 기본 타입

 

Boolean
Number
String
Object
Array
Tuple
Enum
any
void
null
undefined
never

 

 

CSR SEO 관점으로 점수를 못얻는 이유

 

CSR SEO 관점으로 점수를 못얻는 이유

 

<html>
<head>
  <script src="app.js"></script>
</head>
<body>
  <!-- app.js에서 동적으로 생성된 HTML -->
</body>
</html>

 

class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = { data: null };
  }

  componentDidMount() {
    fetch('/api/data')
      .then(response => response.json())
      .then(data => this.setState({ data }));
  }

  render() {
    return (
      <div>
        {this.state.data ? this.state.data : 'Loading...'}
      </div>
    );
  }
}

ReactDOM.render(<App />, document.getElementById('root'));

 

 

 

다이나믹 스코프란 무엇인가?

 

 

public class DynamicScopeSimulation {
    // 스레드 로컬 변수를 사용하여 다이나믹 스코프를 시뮬레이션합니다.
    private static ThreadLocal<Integer> dynamicVar = ThreadLocal.withInitial(() -> 0);

    public static void main(String[] args) {
        outer();
    }

    public static void outer() {
        dynamicVar.set(10); // dynamicVar를 설정
        inner();
    }

    public static void inner() {
        int x = dynamicVar.get(); // dynamicVar 값을 가져옴
        System.out.println("x inside inner: " + x);
    }
}

 

 

 

기본 타입 | 타입스크립트 핸드북 (joshua1988.github.io)

 

기본 타입 | 타입스크립트 핸드북

타입스크립트 기본 타입 타입스크립트로 변수나 함수와 같은 자바스크립트 코드에 타입을 정의할 수 있습니다. 타입스크립트의 기본 타입에는 크게 다음 12가지가 있습니다. Boolean Number String Obj

joshua1988.github.io

 

 

ThreadLocal.withInitial(() -> 0)는 Java의 ThreadLocal 클래스를 사용하여 스레드별로 독립적인 초기값을 설정하는 코드입니다.

 

 

 

 

 

 

 

반응형

댓글